1. josealopezpastor@gmail.com
649.74.94.18
Clase 2ª
1. Gestión de la ayuda
2. Administración básica
1. Administración de Configuración de SQL Server
2. SQL Server Management Studio
3. Teoría de Base de datos
1. Estructura física
2. Estructura lógica
3. josealopezpastor@gmail.com
649.74.94.18
Administrador de configuración de SQL Server (SQL
Server Configuration Manager)
y
SQL Server Management Studio
El primero se usa para configurar los servicios
El otro se usa para otros fines mas que veremos a
continuación
SLQ Server se instala como un servicio (services.msc)
Este servicio se llama MSSQLSERVER
Si hay más de una instancia MSSQLSERVER_número
_instancia
Administración básica
5. josealopezpastor@gmail.com
649.74.94.18
Administración de Configuración de SQL Server
Los servicios pueden estar en tres estados: iniciado,
detenido o en pausa.
Cuando un servicio está arrancado se tiene acceso a los
recursos que el servicio provee
Cuando está en pause el servicio está congelado y se
puede reanudar en cualquier momento conservando su
estado.
Cuando está detenido se desaloja de memoria y se
detiene por completo, arrancando en su valor por defecto.
6. josealopezpastor@gmail.com
649.74.94.18
Si nos interesa que un servicio se ejecute de forma
automática cada vez que se arranca la máquina
cambiaremos de manual a automático
En automático el servicio se arranca aun cuando no haya
sesión arrancada.
Administración de Configuración de SQL Server
7. josealopezpastor@gmail.com
649.74.94.18
Vamos a explicar cada uno de los servicios:
No está en el libro. Parte fundamental extraida de: (
http://www.mssqltips.com/sqlservertip/2622/windows-services
)
SQL Server (MSSQLSERVER): es el servicio principal.
Es el correspondiente al motor de la base de datos.
-Como hemos comentado, puede haber múltiples
instancias de SQL Server instaladas en un equipo. Habrán
entonces múltiples servicios
- Este servicio se encarga de:
- 1) Realizar las query contra las BBDD correspondientes
- 2) En colaboración con el agente SQL Server lleva a cabo
tareas programadas relacionadas con la administración
- 3) Es necesario para un correcto funcionamiento del Para un
correcto funcionamiento de SQL Server Reporting Services
Administración de Configuración de SQL Server
8. josealopezpastor@gmail.com
649.74.94.18
SQL Server Integration Services 11.0: este servicio es el
correspondiente a SQL Server Integration Services (SSIS).
- Hay solo una instancia de este servicio aunque haya
varias instancias de SQL Server.
-Se emplea para:
- Monitorizar la ejecución de paquetes que están almacenados
en la SSIS Package Store.
- Para gestionar (import, export, delete, reorganize, etc.) los
paquetes almacenados tanto en el SSIS Package Store local
como en instancias remotas del SSIS
-Depende del SQL Server (MSSQLSERVER)
Administración de Configuración de SQL Server
10. josealopezpastor@gmail.com
649.74.94.18
SQL Server Analysis Services: se encarga de la gestión
del Analysis Services Component (SSAS). SSAS es el
componente OLAP de SQL Server y es usado para
reporting y análisis de la información
- Analysis Services solamente soporta autenticación del
tipo Windows Authentication.
-Se emplea para:
- Desplegar los cubos OLAP
- Realizar trabajos previos con los datos para el despliegue de
los cubos OLAP
-Depende del SQL Server (MSSQLSERVER) y de SQL
Server Browser.
Administración de Configuración de SQL Server
11. josealopezpastor@gmail.com
649.74.94.18
SQL Server Reporting Services: es usado para
gestionar las opciones del Report Server y del Report
Manager.
-Reporting Services solamente soporta autenticación
mediante Windows Autentication
-Se emplea para:
- Buscar y visualizar los reports almacenados en el Report Server
y mediante el Report Manager interface
- Gestionar los permisos relativos a los reports
-Depende del SQL Server (MSSQLSERVER) y de SQL
Server Agent
Administración de Configuración de SQL Server
12. josealopezpastor@gmail.com
649.74.94.18
SQL Server Browser: escucha las solicitudes entrantes
de recursos de Microsoft SQL Server y proporciona
información acerca de las instancias de SQL Server
instaladas en el equipo
-Se emplea para:
- Conectarse con SQL Server si los parámetros TCP/IP no están
“provided”
- Permitir la conexión con SQL Server Analysis Services
-No depende de ningún servicio
Administración de Configuración de SQL Server
13. josealopezpastor@gmail.com
649.74.94.18
SQL Server Agent: se usa como programador de tareas
administrativas como ejecución de paquetes SSIS, T-SQL
Scripts (procedimientos almacenados), etc. Estas tareas
se conocen como jobs. Los jobs pueden tener varios
pasos. Los jobs se pueden ejecutar de tres formas: on
demand, programados o en un evento específico.
-Este emplea para:
- Llevar a cabo la programación de tareas administrativas
- Procesar reports del reporting services
-Depende del SQL Server (MSSQLSERVER) y del SQL
Server Reporting Services.
Administración de Configuración de SQL Server
14. josealopezpastor@gmail.com
649.74.94.18
Pero también se encarga de:
-Cambiar las cuentas de usuario utilizadas por los
servicios
-Configurar los protocolos de red utilizados por SQL
Server
-Administrar la configuración de conectividad de red de los
equipos cliente de SQL Server
Administración de Configuración de SQL Server
17. josealopezpastor@gmail.com
649.74.94.18
Por defecto se muestra el servidor que acabamos instalar.
Pero nos podemos conectar a otros servidores en red
La autenticación puede ser mediante usuario y
contraseña o mediante el usuario de Windows con el que
estamos logueados.
josealopezpastor@gmail.com
649.74.94.18
SQL Server Management Studio
18. josealopezpastor@gmail.com
649.74.94.18
Grupos de servidores: podemos administrar varias
instancias de SQL Server de forma simultánea mediante
(Ver-Servidores Registrados)
Para hacer grupos de servidores (Pag 65 y Pag 66)
SQL Server Management Studio
19. josealopezpastor@gmail.com
649.74.94.18
Carpetas de un servidor: cada servidor aloja diversos
elementos clasificados en carpetas. Cada carpeta con un
propósito distinto.
Además tenemos un contenido distinto en la parte derecha
así como un menú emergente distinto si hacemos click
con el botón derecho en función de la carpeta.
SQL Server Management Studio
21. josealopezpastor@gmail.com
649.74.94.18
Actuar sobre un servidor: se pueden hacer
algunas tareas que son realizadas con el
SQL Server Configuration Manager ya que
podemos iniciar, parar o poner en pausa la
instancia
Esto se puede hacer para cualquier servidor
al que estemos conectado aunque sea en
remoto
SQL Server Management Studio
22. josealopezpastor@gmail.com
649.74.94.18
Administración de la seguridad:
el método de autenticación preferentes es el propio
sistema integrado en Windows.
Tras el proceso de autenticación el servidor certifica los
permisos del usuario para acceder a los datos y las
operaciones que puede realizar con los mismos.
Hablaremos del caso de usuarios que están bajo un
Windows Server y por lo tanto, probablemente en un
Active Directory.
SQL Server Management Studio
23. josealopezpastor@gmail.com
649.74.94.18
Administración de la seguridad:
No todos los usuarios que tiene acceso a iniciar sesión
tienen acceso a SQL Server
Podemos añadir directamente permisos de acceso a todo
un grupo de usuarios de Active Directory mediante la
carpeta seguridad. (Botón derecho-Nuevo inicio de sesión)
SQL Server Management Studio
24. josealopezpastor@gmail.com
649.74.94.18
Administración de la seguridad:
Este usuario ya tendría permisos de inicio de sesión pero
no tiene privilegios que le permitan operar sobre bases de
datos.
Podemos darle permisos para todo el servidor o para cada
una de las base de datos.
SQL Server Management Studio
27. josealopezpastor@gmail.com
649.74.94.18
Administración de la seguridad.
Los roles de servidor están predefinidos y no se pueden
crear nuevos ni modificar los existentes.
Solamente podemos añadir cuentas de inicio de sesión,
usuarios o grupos
SQL Server Management Studio
28. josealopezpastor@gmail.com
649.74.94.18
Administración de la seguridad.
Los diferentes roles son:
-bulkadmin: inserción masiva de datos
-dbcreator: creación y modificación de base de datos
-diskadmin: administración de los archivos en disco
-processadmin: gestión de los procesos asociados a SQL
-securityadmin: definición de las cuentas de inicio de sesión
-serveradmin: configuración de las opciones para el RDBMS
-setupadmin: configuración para el registro de servidores
-sysadmin: es el administrador del sistema y puede realizar cualquier
acción
SQL Server Management Studio
29. josealopezpastor@gmail.com
649.74.94.18
Teoría de base de datos
SQL Server es un RDBMS (Relational Database
Management System), es decir, un gestor de bases de
datos.
Definición de base de datos: objeto lógico que sirve
para el almacenamiento y recuperación de datos desde
un dispositivo.
Una de las características principales es el rendimiento
a la hora de recuperación de los datos. Uno de los
mecanismos para acelerar el rendimiento es el uso de
índices.
Las vistas son otro elemento donde la información se
muestra de una manera prefijada y determinada
30. josealopezpastor@gmail.com
649.74.94.18
Es posible además que la lógica de funcionamiento esté
almacenada en la misma base de datos, de manera que
las operaciones habituales se almacenen como
procedimientos almacenados.
Acciones como la creación de una nueva cuenta de
cliente, la totalización de un pedido o la búsqueda
perteneciente a una cierta familia puede codificarse
como procedimientos almacenados.
Se tiene que determinar por parte de desarrollo si la
lógica se deja en manos del servidor de base de datos o
se lleva al servidor de aplicaciones.
Teoría de base de datos
31. josealopezpastor@gmail.com
649.74.94.18
El modelo relacional: establece una separación clara
entre la estructura lógica de los datos y la forma en la
que estos se almacenan.
Las tablas son el elemento básico del modelo
relacional. Es decir, un conjunto de filas (registros)
compuesto por uno o más columnas (atributos)
Las relaciones entre las filas se establecen empleando
claves primarias y foráneas, no utilizando nunca
información sobre la estructura física donde se
almacenan los datos
Teoría de base de datos
32. josealopezpastor@gmail.com
649.74.94.18
Estructura física de una base de datos: una base de
datos esta formada por dos archivos como mínimo. En
un archivo se almacenan los datos y en otro las
transacciones.
Si se prevé que la BBDD va a tener un tamaño
considerable se puede usar más de un archivo de
datos.
En el archivo de datos se encuentran los datos
propiamente. Pero también procedimientos
almacenados, vistas, etc
Con el registro de todas las transacciones en un solo
fichero se consigue integridad y solución de errores.
Teoría de base de datos
33. josealopezpastor@gmail.com
649.74.94.18
Estructura física de una base de datos: en el caso de
contar con varios archivos de datos o varios archivos de
registro, lo ideal es que estos se encuentren en
unidades de disco diferentes para así tener menores
tiempos de acceso.
Teoría de base de datos
34. josealopezpastor@gmail.com
649.74.94.18
Nombres de archivo. Por regla general se usa la
siguiente sintaxis:
Nombre_BBDD_Data.MDF
Nombre_BBDD_Log.LDF
Aunque se pueden usar otros nombres distintos
Recomendable guardar datos y log en discos
distintos por si perdidas de disco
Ruta: C:Program FilesMicrosoft SQL
ServerMSSQL11.MSSQLSERVERMSSQLDATA
Teoría de base de datos
35. josealopezpastor@gmail.com
649.74.94.18
Crecimiento de una base de datos: en la mayoría
de casos es difícil prever cual será el tamaño de la
BBDD.
Por lo tanto no se establece un tamaño fijo en el
momento de la creación sino que se usa tamaño
predeterminado por el motor
Cuando los datos o el log alcanzan el límite se
incrementa el tamaño de los ficheros.
Este mecanismo limita y gestiona el tamaño de la
BBDD en disco.
Todos estos parámetros se determinan en la
creación de la misma
Teoría de base de datos
36. josealopezpastor@gmail.com
649.74.94.18
Estructura lógica
Para gestionar una BBDD no es necesario conocer
a fondo estructura física pero si importante la
estructura lógica
Tablas: se trata de la entidad básica de
almacenamiento de información. Todos los datos
que añadimos a la BBDD se almacenan en tablas.
Una tabla está compuesta por columnas. Cada una
de estas columnas tiene un nombre y un tipo de
datos.
Generalmente una base de datos contiene múltiples
tablas que se relacionan entre si con relaciones
uno-a-uno, uno-a-muchos o muchos a muchos
38. josealopezpastor@gmail.com
649.74.94.18
Indices: al trabajar con tablas que tengan miles o
millones de registros el proceso de recuperar filas
puede tardar mucho tiempo.
Los índices son una lista de claves con una
estructura y un orden definidos tal que el servidor
puede hacer búsquedas rápidas en ellos.
Los índices se almacenan, al igual que las tablas,
procedimientos almacenados, etc
Cada vez que se inserta, modifica o elimina una
tabla de la cual dependen uno o varios índices se
tiene también que actualizar estos índices.
Estructura lógica
39. josealopezpastor@gmail.com
649.74.94.18
Vistas: al trabajar con BBDD es habitual que se
soliciten muchas veces los mismos conjuntos de
datos por lo que se necesitarán consultas SQL
idénticas. Para evitar este trabajo repetitivo se
crean las vistas
Una vista se almacena y se trata como si fuera una
tabla pero en realidad no contiene datos sino que
los extrae de una o varias tablas.
Estructura lógica
40. josealopezpastor@gmail.com
649.74.94.18
Procedimientos almacenados: el servidor de SQL
Server es capaz de ejecutar procedimientos
escritos en un lenguaje llamado Transact-SQL.
Estos procedimientos se denominan almacenados
dado que se almacenan en la misma base de datos
En ellos se puede implementar lógica para la
gestión de los datos.
Estructura lógica
41. josealopezpastor@gmail.com
649.74.94.18
Orden de intercalación: especifica la forma que se
empleará para la ordenación de registros.
Lo habitual es usar la misma que en la
configuración regional de Windows
También afecta a las operaciones de búsqueda de
Windows (la intercalación indica si las letra
mayúsculas, minúsculas, acentuadas, etc se tratan
como las que no lo están)
En la instalación se seleccionó la intercalación que
se va a usar en el resto de tablas a no ser que se
indique lo contrario
Se identifican mediante un nombre
(Moderm_Spanish) seguido de una combinación de
letras
Estructura lógica
42. josealopezpastor@gmail.com
649.74.94.18
Se identifican mediante un nombre
(Moderm_Spanish) seguido de una combinación de
letras que indican si se distinguen entre
mayúsculas-minúsculas y acentuadas
Modern_Spanish_BIN
Modern_Spanish_CI_AI
Modern_Spanish_CI_AS
Modern_Spanish_CS_AI
Modern_Spanish_CS_AS
Pag 92
Estructura lógica