PDF Sistemas Uni SQL Administracion PDF
April 7, 2023 | Author: Anonymous | Category: N/A
Short Description
Download PDF Sistemas Uni SQL Administracion PDF...
Description
PASOS PARA INGRESAR AL INTRANET DE ALUMNOS 1. Solicitar al Área de Informes ó Administración de Sistemas UNI su Usuario y Contraseña la cual se podrá ser cambiada al iniciar sesión por primera vez. IMPORTANTE: Es de suma importancia que usted verifique y actualice sus Apellidos y IMPORTANTE: Es Nombres de forma correcta en el Área de Administración, Administración, debido a que los mismos irán en su certificado (cuando lo tramite), caso contrario si los datos están incorrectos (al momento de la entrega del certificado) la emisión del nuevo certificado con los datos corregidos tendrá un costo de 20 soles. 2. 2. Una vez obtenido el Usuario y la Contraseña ingrese a www. Sistemasuni.edu.pe y Sistemasuni.edu.pe y click en Alumnos.
3. 3. Ingresar su Usuario y su Password proporcionado en el Área de Informes ó Administración. Admini stración.
4. 4. Una vez ingresado Ud. Puede revisar sus cursos que llevo y sus respectivas notas en campo Cursos Libres y Módulos, respectivamente de la modalidad en la cual Ud. Se matriculó. También puede verificar sus Apellidos y Nombres, de estar incompletos o erróneos. Acercarse al Área de Informes ó Administración para su corrección.
5. 5. De no visualizar sus notas hasta luego de d e 7 días después de finaliz finalizado ado el curso, comunicarse al teléfono 200-9060 teléfono 200-9060 opción 3 (Área 3 (Área de Administración).
Facultad de Ingeniería Industrial y de Sistemas Sistemas
APIT ITULO ULO 1 C AP Instalación y configuración del SQL Serve Serverr 2014 Ediciones del SQL Server 2014 Requerimientos de Hardware y Software
SQL SQ L Server Server - Admin istració n
Pág. 1
Universidad Nacional de Ingeniería
INSTALACION Y CONFIGURACION DEL SQL SERVER 2014
Una de las primeras responsabilidades responsabilidades que asume un DBA (Data Base Administrador), es la elección del software más adecuado a las necesidades que presente la empresa. Es por esta razón que, Microsoft corp., pone a nuestra disposición, de diferentes ediciones de su “Sistema Administrador de Base de Datos” SQL Server 2014.
¿QUÉ ES SQL SERVER 2014? SQL Server 2014 es una plataforma global de base de datos que ofrece administración de datos empresariales empresariales con herramientas integradas de inteligencia empresarial (BI). El motor de la base de datos SQL Server 2014 ofrece almacenamiento más seguro y confiable tanto para datos relacionales como estructurados, lo que le permite crear y administrar administr ar aplicaciones de datos altamente disponibles y con mayor rendimiento para utilizar en su negocio. El motor de datos SQL Server 2014 constituye el núcleo de esta solución de administración administr ación de datos empresariales. empresariales. Asimismo, SQL Server 2014 combina lo mejor en análisis, información, integración y notificación. Esto permite que su negocio cree y despliegue soluciones de BI rentables que ayuden a su equipo a incorporar datos en cada rincón del negocio a través de tableros de comando, escritori escritorios os digitales, servicios Web y dispositivos móviles. La integración directa con Microsoft Visual Studio, el Microsoft Office System y un conjunto de nuevas herramientas de desarrollo, incluido el Business Intelligence Development Studio, distingue al SQL Server 2014. Ya sea que usted se desempeñe como encargado de desarrollo, administrador de base de datos, trabajador de la industria de la información o dirija una empresa, SQL Server 2014 ofrece soluciones innovadoras que le ayudan a obtener más valor de sus datos.
HERRAMIENTAS HERRAMIE NTAS QUE INCLUYE EL SQL SERVER 2014 Base de datos relacional. r elacional. Un motor de base de datos relacional más segura, confiable, escalable y altamente disponible con mejor rendimiento y compatible para datos estructurados y sin estructura (XML). Servicios de réplica. Réplica réplica. Réplica de datos para aplicaciones de procesamiento de datos distribuidos o móviles, alta disponibilidad de los sistemas, concurrencia escalable con almacenes de datos secundarios para soluciones de información empresarial e integración integraci ón con c on sistemas heterogéneos, incluidas las bases de datos Oracle existentes. Notification Services. Capacidades Services. Capacidades avanzadas de notificación para el desarrollo y el despliegue de aplicaciones escalables que pueden entregar actualizaciones de información personalizadas personalizadas y oportunas a una diversidad de dispositivos conectados y móviles. Integration Services. Services. Capacidades de extracción, transformación y carga (ELT) de datos para almacenamiento e integración de datos en toda la empresa. Analy An alysi si s Serv Servic ices. es. Capacidades Capacidades de procesamiento analítico en línea (OLAP) para el análisis rápido y sofisticado de conjuntos de datos grandes y complejos, utilizando almacenamiento multidimensional.
Pág. 2 2
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas Reporting Services. Una Services. Una solución global para crear, administrar y proporcionar tanto informes tradicionales orientados al papel como informes interactivos basados en la Web. Herramientas de administración. administración. SQL Server incluye herramientas integradas de administración para administración y optimización avanzadas de bases de datos, así como también integración directa con herramientas tales como Microsoft Operations Manager (MOM) y Microsoft Systems Management Server (SMS). Los protocolos de accesoende datos estándar reducen drásticamente el tiempo elque demanda integrarWeb los datos SQL Server con los sistemas existentes. Asimismo, soporte del servicio nativo está incorporado en SQL Server para garantizar la interoperabilidad con otras aplicaciones y plataformas. Herramientas He rramientas de desarrollo . SQL Server ofrece herramientas integradas de desarrollo para el motor de base de datos, extracción, transformaci transformación ón y carga de datos, m minería inería de datos, OLAP e informes que están directamente integrados con Microsoft Visual Studio para ofrecer capacidades de desarrollo de aplicación de extremo a extremo. Cada subsistema principal en SQL Server se entrega con su propio modelo de objeto y conjunto de interfaces del programa de aplicación aplicación (API) para ampliar el sistema de datos en cualquier dirección que sea específica de su negocio.
NOVEDADES EN SQL SERVER 2014
M IGRACIÓN ENTRE CLÚSTERES DE GRUPOS DE DISPONIBILIDAD A LWAYSO N PARA LA ACTUALIZACIÓN DEL SISTEMA OPERATIVO OPERATIVO SQL Server 2014 incluye compatibilidad con la migración entre clústeres de implementaciones de grupos de disponibilidad AlwaysOn en un nuevo clúster de Clústeres de conmutación por error de Windows Server (WSFC).Una migración entre clústeres mueve un grupo de disponibilidad o un lote de grupos de disponibilidad AlwaysOn al nuevo clúster de WSFC de destino con un tiempo de inactividad mínimo. El proceso de migración entre clústeres le permite mantener los contratos de nivel de servicio (SLA) al actualizar a un clúster de Windows W indows Server 2014.SQL Server 2014 debe estar instalado y habilitado para AlwaysOn en el clúster de destino de WSFC. El éxito de la migración entre clústeres depende de un planeamiento y una preparación exhaustivos del clúster de destino de WSFC.
Número máximo máximo de proc procesa esador dores es com compatibles patibles con las ediciones de SQL Server SQL Server admite el número especificado de sockets de procesador multiplicado por el número de CPU lógicas en cada socket. Por ejemplo, lo siguiente se considera un solo procesador para los fines de esta tabla: Un procesador procesador de un un sol soloo núcl núcleo eo e hipersubpro hipersubprocesamiento cesamiento con do doss CPU lógicas por socket. Un procesador de doble núcleo con dos CPU llógicas. ógicas. Un procesador de núcleo cuádruple con cuatro CPU lógicas. lógicas. SQL Server se utiliza utiliza bajo licencia para cada socket del procesador procesador y no para cada CPU lógica.
SQL SQ L Server Server - Admin istració n
Pág. 3
Universidad Nacional de Ingeniería
Considera Consid eracio ciones nes sobr sobre e la Segurid Segurida ad Para iniciar Management Studio, elija Programas>Microsoft SQL Server 2014>SQL Server Management Studio en el menú de Inicio de Windows. Management Studio se Inicio de instala durante instalación de cuanto Sql Server 2014. Allaabrirse, lede pide que se conecte a una instancia delaSQL Server. En se conecte, instancia SQL Server aparece en el Explorador de objetos.
Si fuera necesario, se podría dar a conocer características especiales especiales sobre la cconexión, onexión, para ello, hay que hacer clic sobre Propiedades de Conexión, Conexión , luego, aparecerá la siguiente pantalla.
Pág. 4 4
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
En el combo de base de datos, se podrá seleccionar la Base de Datos con la cual deseamos conectarnos, esto dependerá del servidor con el cual nos enlacemos. En el área de detalles de la red, veremos v eremos el modo de conexión que tenemos con el SQL Server, dicho sea de paso, no es necesario cambiar esta opción. En conexiones, podemos especificar el tiempo de espera para la conexión, en tiempo de ejecución, se determina el tiempo de espera para la ejecución de las sentencias en T-SQL. Una vez que hayamos dado a conocer, todas las características necesarias para la conexión, haremos clic sobre el botón Conectar . Seguidamente, veremos la pantalla del Management Studio.
SQL SQ L Server Server - Admin istració n
Pág. 5
Universidad Nacional de Ingeniería
Instalando Inst alando el SQL Se Serv rver er 201 2014 4 Una vez que hayan decidido la Edición a utilizar del SQL Server 2014, procederemos a instalar el software. La primera pantalla que se muestra, permite obtener información sobre los requisitos de instalación, configuración configuración y uso del producto.
Desde aquí, podemos seleccionar el tipo de instalación que se realizará del producto, ya sea que se realice realice una primera instalac instalación, ión, se agregue una nueva instancia, se utilice algún clúster u otro tipo de instalación permitida. Para nuestro caso, será la primera opción.
Pág. 6 6
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
Inmediatamente se procederá a cargar los archivos de instalación. El instalador del SQL Server cargará los archivos necesarios para verificar si se cumplen con los requisitos exigidos por el fabricante.
SQL SQ L Server Server - Admin istració n
Pág. 7
Universidad Nacional de Ingeniería
Se validan las reglas generales de la instalación, lo más m ás común es que sse e tenga que reiniciar el servidor para continuar.
Se valida que se hayan cumplido cumplido con todas la reglas generales para la instalación.
Pág. 8 8
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas Se validan posibles errores durante la instalación, lo más común es que se muestre una advertencia sobre el firewall, f irewall, esta se puede configurar posteriormente.
Desde aquí indicaremos que elementos se instalarán, tanto a nivel del servidor como del cliente, lo más importante es el Motor (Engine) de Base de Datos.
SQL SQ L Server Server - Admin istració n
Pág. 9
Universidad Nacional de Ingeniería
Para la primera instalación se tomará el nombre MSSQLSERVER.
Automáticamente se crearán cuentas para cada uno de los servicios a instalar, mantenerlas y despues cambiar por alguna para administrar el producto.
Pág. 10 10
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas Se pueden indicar rutas distintas para las BD, BD , temporales y backup.
De igual manera con las cuentas para el servicio de Análisis.
SQL SQ L Server Server - Admin istració n
Pág. 11
Universidad Nacional de Ingeniería
Es necesario indicar las cuentas de los administradores del servicio.
Pág. 12 12
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
APIT ITULO ULO 2 C AP
Administración Administración de la Base ddee Datos y Ar Archivos chivos Planificación Planificación de la BD. Creación de la BD. Administración Administración de la BD.
Uso de Schemas y FileGroups.
SQL SQ L Server Server - Admin istració n
Pág. 13
Universidad Nacional de Ingeniería
C
R E A C I Ó N
D E
L A
BD
Para crear la base de datos, podemos hacer uso del management Studio, o a través de sentencias T-SQL, en ambos casos, tendremos los mismos resultados. El proceso de definición de una base de datos crea también un registro de transacciones para esa base de datos. Utilizando el management Studio, el procedimiento sería el siguiente, primero nos ubicamos sobre el objeto Bases de Datos, Datos , luego clic derecho. Del menú contextual, seleccionar la alternativa Nueva Base de Datos, Datos , para que se muestre la ventana de propiedades de la nueva base de datos.
Desde esta ventana, podremos darle nombre a la nueva base de datos, también se puede especificar el propietario, así como los nombres físicos y lógicos de la base de datos.
Si fuera necesario agregar nuevos grupos de archivos, hacer clic sobre el botón Agreg Ag regar ar , luego aparecerá la siguiente pantalla.
Pág. 14 14
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
Para crear la base de datos desde T-SQL, podemos escribir lo siguiente: Creando la base de datos sin dar mayores especificaciones sobre los archivos a crear: USE master; GO IF DB_ID (N'sistemasUNI') IS NOT NULL DROP DATABASE sistemasUNI; GO CREATE DATABASE sistemasUNI; GO – Verificando los archivos y tamaños de la BD SELECT name, size, size*1.0/128 AS [Size in MBs] FROM sys.master_files WHERE name = N' sistemasUNI '; GO
Creando una base de datos especificando especificando los archivos de datos y de transacciones USE master; GO IF DB_ID (N'Ventitas') IS NOT NULL DROP DATABASE Sales; GO – obteniendo la ruta del SQL Server DECLARE @data_path nvarchar(256); SET @data_path = ( SELECT SUBSTRING(physical_name, 1, CHARINDEX(N'master.mdf', LOWER(physical_name)) - 1) FROM master.sys.master_files WHERE database_id = 1 AND file_id = 1); -- ejecutando la sentencia CREATE DATABASE EXECUTE ('CREATE DATABASE Ventitas ON ( NAME = Ventitas _dat, FILENAME = '''+ @data_path + ' Ventitasdat.mdf'', SIZE = 10,
SQL SQ L Server Server - Admin istració n
Pág. 15
Universidad Nacional de Ingeniería
MAXSIZE = 50, FILEGROWTH = 5 ) LOG ON ( NAME = Ventitas _log, FILENAME = '''+ @data_path + ' Ventitaslog.ldf'', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB )' ); GO
Creando una base de datos con múltiples archivos, los archivos con extensiones md mdf f contienen los archivos primarios, los nd f contienen contienen los archivos secundarios y los ldf ld f contienen las transacciones. USE master; GO IF DB_ID (N'Archivo') IS NOT NULL DROP DATABASE Archivo; GO – obteniendo la ruta del SQL Server DECLARE @data_path nvarchar(256); SET @data_path =(SELECT SUBSTRING(physical_name, 1, CHARINDEX(N'master.mdf', LOWER(physical_name)) - 1) FROM master.sys.master_files WHERE database_id = 1 AND file_id = 1); -- ejecutar la sentencia CREATE DATABASE EXECUTE ('CREATE DATABASE Archivo ON PRIMARY ( NAME = Arch1, FILENAME = '''+ @data_path + 'archdat1.mdf'', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20), ( NAME = Arch2, FILENAME = '''+ @data_path + 'archdat2.ndf'', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20), ( NAME = Arch3, FILENAME = '''+ @data_path + 'archdat3.ndf'', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20) LOG ON ( NAME = Archlog1, FILENAME = '''+ @data_path + 'archlog1.ldf'', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20), ( NAME = Archlog2, FILENAME = '''+ @data_path + 'archlog2.ldf'', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20)' ); GO
La información acerca de las bases de datos de SQL Server está almacenada en la tabla sysdatabases de la base de datos master . Por tanto, debe utilizar la base de sysdatabases de datos master para para definir una base de datos cuando utilice instrucciones Transact-SQL.
Pág. 16 16
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas La definición de una base de datos consiste en especificar el nombre de la base de datos, y diseñar el tamaño y la ubicación de los archivos de la base de datos. Cuando se crea la nueva base de datos, ésta es un duplicado de la base de datos model model.. Las opciones o configuraciones de la base de datos model model se se copian en la nueva base de datos. Importante,, se recomienda hacer un Importante una a copia de seguridad seguridad de la base de datos master cada vezuna quebase cree,de modifique elimineestabl una base Al crear datos seopueden establecer ecer de los datos. siguientes parámetros:
PRIMARY Este parámetro especifica los archivos del grupo de archivos principal. El grupo de archivos principal contiene todas las tablas del sistema de la base de datos. También contiene todos los objetos no asignados a grupos de archivos del usuario. Todas las bases de datos tienen un archivo de datos principal. El archivo de datos principal es el punto de inicio de la base de datos y señala a los demás archivos de la base de datos. La extensión de nombre de archivo recomendada para los archivos de datos principales es md mdf f . Si no se especifica la palabra clave PRIMARY, el pr primer imer archivo enumerado en la instrucción es el archivo principal.
FILENAME Este parámetro especifica el nombre del archivo del sistema operativo y la ruta de acceso al archivo. La ruta acceso de archivo debe especificar una carpeta del servidor en el que está instalado SQL Server.
SIZE Este parámetro especifica el tamaño de los archivos de datos o de registro. Puede especificar los tamaños en megabytes (MB), que es el valor predeterminado, o en kilobytes (KB). El tamaño mínimo es de 512 KB, tanto para los archivos de datos como para los archivos de registro. El tamaño especificado para el archivo de datos principal debe ser, al menos, como el tamaño del archivo principal de la base de datos model. Cuando se agrega un archivo de datos o un archivo de registro, el valor predeterminado es 1 MB.
MAXSIZE Este máximo hasta el que puedeo en crecer el archivo. Puedeparámetro especificarespecifica el tamañoelentamaño megabytes (valor predeterminado) kilobytes. Si no se especifica el tamaño, el archivo crece c rece hasta que el disco esté lleno. FILEGROWTH Este parámetro especifica el incremento de crecimiento del archivo. El valor de FILEGROWTH de un archivo no puede sobrepasar el valor de MAXSIZE. Un valor de 0 indica que no hay crecimiento. El valor se puede especificar en megabytes (el valor predeterminado), en kilobytes o como porcentaje (%). Si no se especifica FILEGROWTH, el valor predeterminado es el 10 por ciento y el valor mínimo es 64 KB (una extensión). El tamaño especificado se redondea al múltiplo de 64 KB más próximo.
COLLATION Este parámetro especifica la intercalación predeterminada para la base de datos. La intercalación intercalaci ón incluye las reglas que gobiernan el uso de caracteres de un lenguaje o un alfabeto.
SQL SQ L Server Server - Admin istració n
Pág. 17
Universidad Nacional de Ingeniería
Regis Re gistro tro d de e Transacciones Transaccion es 1
Modificaciones de datos es enviada por la aplicación La modificación s e registra en Buffer Cache
3
diario de las tr ansacciones ansacciones en el disco Disk
2
Páginas de datos se encuentran en, o se leen, en el buffer de caché
Disk
4
Checkpoint escribe Checkpoint cometido de las transacciones en la base de datos
SQL Server graba todas las transacciones en un registro de transacciones para mantener la coherencia de la base de datos y facilitar la recuperación. El registro es un área de almacenamiento que efectúa automáticamente el seguimiento de todos los cambios en la base de datos. SQL Server graba las modificaci modificaciones ones al registro en disco cuando se ejecutan, antes de que se s e escriban en la base de datos. El proceso de registro es el siguiente: La aplicación aplicación envía una modificación de datos. Cuando la la modi modificación ficación se ejecuta, las pá páginas ginas de datos afect afectadas adas se cargan en la caché del búfer desde el disco si no están ya cargadas en la caché del búfer por una consulta anterior. Cada instrucción instrucción de modificaci modificación ón de datos se graba en el registro mientras se ejecuta. El cambio siempre se graba en el registro y se escribe en disco antes de hacer la modificación en la base de datos. Este tipo de registro se denomina registro de preescritura. De forma repetiti repetitiva, va, el proceso de punto de co comprobación mprobación escribe en disco disco todas las transacciones completadas completadas en la base de datos. Si se produce un error error del sistema, el proceso automático de recup recuperación eración utiliza utiliza el registro de transacciones para aplicar todas las transacciones confirmadas y deshacer las transacciones incompletas. Los marcadores marcadores de transacción transacción del registro se utilizan durante la rrecuperación ecuperación automática para determinar los puntos de inicio y fin de cada transacción. Una transacción se considera completa cuando el marcador BEGIN TRANSACTION tiene un marcador COMMIT TRANSACTION asociado. Las páginas de datos se escriben en disco cuando existe un punto de comprobaci comprobación. ón.
• •
•
•
•
•
Pág. 18 18
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
Ad A d m i n i s t r ac acii ó n d e lla a BD. Después de haber creado una base de datos, se puede definir opciones de base de datos con el Management Studio del SQL Server o por m medio edio de la instrucción ALTER DATABASE. Puede configurar varias opciones de base de datos, pero sólo se puede hacer en una sola basenuevas, de datos al mismo tiempo. Para model que las. opciones afecten a todas las bases de datos cambie la base de datos model.
Recup Re cupera eración ción de inform información ación d de e la base de da datos tos Puede determinar las propiedades de la base de datos con la siguiente función DATABASEPROPERTYEX. SELECT DATABASEPROPERTYEX (base de datos, propiedad) Tener en cuenta que, esta función sólo devuelve el valor de una propiedad a la vez. La siguiente tabla enumera los procedimientos almacena almacenados dos del sistema de uso ccomún omún que presentan información acerca de las bases de datos y sus parámetros. Procedimiento almacenado de Descripción sistema sp_helpdb Informa acerca de todas las bases de datos de un servidor. Proporciona el nombre, tamaño, propietario, Id., fecha de creación y opciones de la base de datos. sp_helpdb baseDeDatos Informa sólo acerca de la base de datos especificada. especifi cada. Proporciona el nombre, tamaño, propietario, Id., fecha de creación y opciones de la base de datos. También enumera los archivos de datos y de registro. sp_spaceused [nombreObjeto] [nombreObjeto] Resume el espacio de almacen almacenamiento amiento que utiliza una base de datos o un objeto de base de datos.
Componentes físicos: archivos y grupos Componentes gru pos d de ea archivos rchivos de ba bases ses de datos (FileGroup). (FileGroup ). Un grupo de archivos es un conjunto lógico de archivos de datos que permite a los administradores administr adores controlar todos los archivos del grupo como un único elemento. La posibilidad de controlar la posición física de los objetos individuales de la base de datos puede proporcionar diversas ventajas en cuanto a facilidad de administración y rendimiento. Por ejemplo, puede utilizar varios grupos de archivos para controlar cómo se almacenan físicamente los datos de una base de datos en dispositivos de almacenamiento, y para separar los datos de lectura y escritura de los datos de sólo lectura.
SQL SQ L Server Server - Admin istració n
Pág. 19
Universidad Nacional de Ingeniería
Tipos de grupos de archivos SQL Server 2014 tiene un grupo de archivos principal y también puede tener grupos de archivos definidos por el usuario. us uario. El grupo de archivos principal contiene el archivo principal de datos con las tablas del sistema. El archivo principal de datos utiliza normalmente la extensión .mdf. Un grupo de archivos definido por el usuario consta de archivos de datos agrupado agrupadoss con fines de asignación y administrativos. Estos otros archivos de datos se conocen como archivos secundarios secundarios de datos y suelen utilizar la extensión .ndf.
S ITUACIÓN DE EJEMPLO PARA VARIOS GRUPOS DE ARCHIVOS La ilustración proporciona un ejemplo de cómo podría colocar los archivos de base de datos en discos diferentes, como se describe en la lista siguiente: Puede crear grupos de archivos definidos por el usuario usuario para separar llos os archivos que se consultan con mucha frecuencia de los que se modifican mucho. En la ilustración, los archivos OrdHist1.ndf y OrdHist2.ndf se colocan en un disco distinto que las tablas Product, Customer y SalesOrderHeader, ya que se consultan como ayuda para la toma de decisiones en lugar de actualizarse con información de pedidos actual. También podría podría colocar colocar los archivos OrdHist1.ndf y OrdHi OrdHist2.ndf st2.ndf en discos discos diferentes si ambos se consultaran con mucha frecuencia. No puede poner archivos de de regi registro stro de transacciones en grupos grupos de de archi archivos. vos. El espacio del registro de transacciones se administra por separado del espacio de
•
•
•
datos. Los registros de transacciones suelen utilizar la extensión .ldf.
Pág. 20 20
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas En el siguiente ejemplo de código Transact-SQL se utiliza la instrucción CREATE DATABASE para implementar esta situación de ejemplo. CREATE DATABASE [AdventureWorks] ON PRIMARY ( NAME = N'AdventureWorks_Data', FILENAME = N'C:\AdventureWorks_Data.mdf' ), FILEGROUP [OrderHistoryGroup] ( NAME = N'OrdHist1', FILENAME = N'D:\OrdHist1.ndf' ), ( NAME = N'OrdHist2', FILENAME = N'D:\OrdHist2.ndf' ) LOG ON ( NAME = N'AdventureWorks_log', FILENAME = N'E:\AdventureWorks_log.ldf')
También puede utilizar la instrucción ALTER DATABASE para agregar o eliminar archivos y grupos de archivos de bases de datos existentes.
Creación de esquemas Los desarrolladores que hayan trabajado con Microsoft .NET Framework o con XML estarán familiarizados con el concepto de espacios es pacios de nombres. Un espacio de nombres ayuda a agrupar los objetos relacionados, haciendo que las listas de objetos complejas sean más fáciles de administrar. SQL Server 2014 utiliza esquemas para implementar un concepto similar para los objetos de base de datos. Los objetos de una base de datos (como tablas, vistas y procedimi procedimientos entos almacenados) se crean dentro de un esquema. Es esencial comprender lo que es un esquema antes de planear e implementar una base de datos de SQL Server 2014.
ESQUEMAS COMO ESPACIOS DE NOMBRES Un esquema es un espacio de nombres para objetos de base de datos. Es decir, un esquema define un límite dentro del cual todos los nombres son únicos. Puesto que los nombres de esquema deben ser únicos dentro de la base de datos, cada objeto de una
SQL SQ L Server Server - Admin istració n
Pág. 21
Universidad Nacional de Ingeniería
base de datos tiene un nombre completo único con el formato servidor.base de datos.esquema.objeto. Dentro de una base de datos, puede acortarlo a esquema.objeto. La ilustración anterior muestra tres esquemas de la base de datos AdventureWorks en una instancia de SQL Server denominada Server1. Los esquemas se denominan Person, Sales y dbo. Cada uno de estos esquemas contiene una tabla y el nombre completo tabla incluye el nombre la base de del datosesquema y el esquema. ejemplo, de el lanombre completo de del la servidor, tabla ErrorLog dbo Por es Server1.AdventureWorks.dbo.ErrorLog. En versiones anteriores de SQL Server, el espacio de nombres de un objeto estaba determinado por el nombre de usuario de su propietario. En SQL Server 2014, los esquemas están separados de la propiedad de los objetos, lo que proporciona las ventajas siguientes: Mayor flexibilidad flexibilidad a la hora de de organizar organizar los objetos de base dde e datos en espacios de nombres, ya que la agrupación de objetos en esquemas no depende de la propiedad de los objetos. Administración Administración de permisos más sen sencilla, cilla, ya que se pue puede de otorgar otorgar per permisos misos eenn el ámbito del esquema y en los objetos individuales. Facilidad de admini administración stración mejorad mejorada, a, porque al qui quitar tar a un usuario no es necesario necesari o cambiar el nombre de todos los objetos que ese usuario posee.
•
•
•
ESQUEMAS DE EJEMPLO La base de datos AdventureWorks utiliza los esquemas siguientes para organizar sus objetos de base de datos en espacios de nombres: HumanResources Person Production Purchasing Sales • • • • •
Por ejemplo, para hacer referencia a la tabla Employee del esquema HumanResources se utiliza HumanResources.Employee. HumanResources.Employee. El esquema dbo Todas las bases de datos contienen un esquema denominado dbo. dbo es el esquema predeterminado para todos los usuarios que no tienen ningún otro esquema predeterminado predeterminad o definido explícitamente. Creación de un esquema Para crear un esquema, utilice el Explorador de objetos de SQL Server Management Studio o utilice la instrucción CREATE SCHEMA, como se muestra en el ejemplo siguiente. Use AdventureWorks GO CREATE SCHEMA Sales GO
Pág. 22 22
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
Cómo funciona la resolución resolución de nombres de objetos Cuando una base de datos contiene varios esquemas, la resolución de nombres de objetos puede resultar confusa. Por ejemplo, una base de datos podría contener dos tablas denominadas Order en dos esquemas diferentes, Sales y dbo. Los nombres completos de los objetos dentro de la base de datos son inequívocos: Sales.Order y dbo.Order, respectivamente. Sin embargo, el uso del nombre incompleto Order puede producir resultados inesperados. Puede asignar a los usuarios un esquema predeterminado predeterminad o para controlar c ontrolar cómo se resuelven los nombres de objetos incompletos.
C ÓMO ÓMO FUNCIONA LA RESOLUCIÓN DE NOMBRES SQL Server 2014 utiliza el proceso siguiente para resolver un nombre de objeto incompleto: Si el usuario usuario tiene un esquema predeterminado, predeterminado, SQL Server intenta encontrar el objeto en ese esquema predeterminad predeterminado. o. Si el objeto no se encue encuentra ntra en el esquema esquema predeter predeterminado minado del del usuari usuario, o, si el •
•
usuario no tiene ningún esquema predeterminado, SQL Server intenta encontrar el objeto en el esquema dbo. Por ejemplo, un usuario que tiene el esquema predeterminado Person ejecuta la siguiente instrucción Transact-SQL: SELECT * FROM Contact
SQL Server 2014 intentará resolver primero el nombre de objeto como Person.Contact. Si el esquema Person no contiene un objeto denominado Contact, SQL Server intentará resolver el nombre de objeto como dbo.Contact. Si un usuario que no tiene ningún esquema predeterminado definido ejecuta la misma instrucción, SQL Server resolverá inmediatamente el nombre de objeto como dbo.Contact.
SQL SQ L Server Server - Admin istració n
Pág. 23
Universidad Nacional de Ingeniería
As ignac Asig nac ió ión n d e un esq esquem uema a pr predet edeterm ermin in ado Puede asignar un esquema predeterminado predeterminado a un usuario utilizando el cuadro de diálogo Propiedades de Usuario de la base de datos o especifi es pecificando cando el nombre del esquema en la cláusula DEFAULT_SCHEMA de la instrucción CREATE USER o ALTER USER. Por ejemplo, el siguiente código Transact-SQL asigna Sales como el esquema predeterminado predeterminad o para el usuario Angello: ALTER USER Angello WITH DEFAULT_SCHEMA = Sales
Pág. 24 24
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
APIT ITULO ULO 3 C AP
Planificación Planificación de una Estrategia de Backups Realizando el Backup de la BD Restaurando una BD Recuperación de datos desde Snapshots
SQL SQ L Server Server - Admin istració n
Pág. 25
Universidad Nacional de Ingeniería
P
L A N I F I C A C I Ó N D E B A C K U P S
D E
U N A
E
S T R A T E G I A
Con frecuencia, los datos en una base de datos confirman las operaciones de una organización. Sin la base de datos, la organización no puede funcionar adecuadamente. Es importante que cada misión crítica sistema de base de datos haya sido adecuadamente definida en procedimientos de recuperación de desastres. Las operaciones de Copia de seguridad y Restauración, son una parte vital de la gestión de datos y son esenciales esenciales para la recuperación ante fallas y desastres. Por lo tanto, una parte importante del papel de un administrador de bases de datos, es garantizar que los datos sean respaldados y puedan ser restaurados rápidamente en caso c aso de un desastre. Tipos de Backup
Pág. 26 26
Descripc Descripc ión
Full
Todos los archivos de la Base de Datos, datos (MDF y NDF) y de transaccione transaccioness (LDF).
Transaction Log
Cualquier cambio cambio en la Base de Datos, es guardado en el archivo de transaccione transacciones. s.
Differential
Las partes de la Base de Datos que han cambiado desde el último backup completo a la Base de Datos.
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
SQL SQ L Server Server - Admin istració n
Pág. 27
Universidad Nacional de Ingeniería
Realiza Re alizando ndo el Backu Backup pd de e la BD Uso de la Inst nstruc rucción ción BACKUP DAT DATABASE ABASE Realiza una copia de seguridad completa de la base de datos o de uno o vvarios arios archi archivos vos o grupos de archivos (BACKUP DATABASE). D ATABASE). Además, con el modelo de recuperación completa o el modelo de recuperación optimizado para cargas masivas de registros, realiza la copia de seguridad del registro de transaccione transaccioness (BACKUP LOG). Sintaxis --creando un backup BACKUP DATABASE { database_name | @database_name_var } TO [ ,...n ] [ ] [ next-mirror-to ] [ WITH { DIFFERENTIAL | [ ,...n ] } ] [;] --Backup para Files o Filegroups BACKUP DATABASE { database_name | @database_name_var } [ ,...n ] TO [ ,...n ] [ ] [ next-mirror-to ] [ WITH { DIFFERENTIAL | [ ,...n ] } ] [;] --Creando un Backup Parcial BACKUP DATABASE { database_name | @database_name_var } READ_WRITE_FILEGROUPS [ , [ ,...n ] ] TO [ ,...n ] [ ] [ next-mirror-to ] [ WITH { DIFFERENTIAL | [ ,...n ] } ] [;]
Arg Ar g u men mento toss DATABASE Especifica una copia de seguridad completa de la base de datos. Si se especifica una lista de archivos y grupos de archivos, sólo se realiza la copia de seguridad de esos archivos o grupos de archivos. Durante una copia de seguridad completa o diferencial de una base de datos, SQL Server realiza la copia de seguridad de una parte suficiente del registro de transacciones para producir una base de datos coherente cuando se restaure la base de datos. LOG Especifica que sólo se realizará la copia de seguridad del registro de transacciones. transacciones. Se realiza la copia de seguridad del registro desde la última ccopia opia de seguridad del registro ejecutada correctamente hasta el final actual del registro. Antes de que pueda crear la primera copia de seguridad del registro, debe crear una copia c opia de seguridad completa. { database_name | @database_name_var }
Pág. 28 28
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas Es la base de datos para la que se realiza la copia de seguridad del registro de transacciones, de una parte de la base de datos o de la base de datos completa. Si se proporciona como una variable (@database_name_var), este nombre se puede especificar como una constante de cadena (@database_name_var = database name) o como una variable de un tipo de datos de cadena de caracteres, excepto los tipos de datos ntext o text. [ ,...n ]
Se utiliza sólo con BACKUP DATABASE, especifi especifica ca un grupo de archivos o un archivo de copia de seguridad que se va a incluir en una copia de seguridad de archivos o especifica un grupo de archivos o un archivo de sólo lectura que se va a incluir en una copia de seguridad parcial. FILE = { logical_file_name | @logical_file_name_var @logical_file_name_var }
Es el nombre lógico de un archivo o una variable cuyo valor equivale al nombre lógico de un archivo que se va a incluir en la copia de seguridad. FILEGROUP = { logical_filegroup_name logical_filegroup_name | @logical @ logical_filegroup_nam _filegroup_name_var e_var }
Es el nombre lógico de un grupo de archivos o una variable cuyo valor equivale al nombre lógico de un grupo de archivos que se va a incluir en la copia de seguridad. En el modelo de recuperación simple, se permite la copia de seguridad de un grupo de archivos sólo si se trata de un grupo de archivos de sólo lectura. n
Es un marcador de posición que indica que se pueden especificar varios archivos y grupos de archivos en una lista separada por comas. El número es ilimitado. READ_WRITE_FILEGROUPS [ , FILEGROUP @logical_filegroup_n @logical _filegroup_name_var ame_var } [ ,...n ] ]
=
{
logical_filegroup_name
|
Especifica una copia de seguridad parcial. Una copia de seguridad seguridad parcial incluye todos los archivos de lectura/escritura en una base de datos: el grupo de archivos principal y los grupos de archivos secundarios de lectura/escritura, así como los grupos de archivos o archivos de sólo lectura especificados. especificados. READ_WRITE_FILEGROUPS Especifica que en la copia de seguridad parcial se copiarán todos los grupos de archivos de lectura/escritura. Si la base de datos es de sólo lectura, READ_WRITE_FILEGROUPS incluye tan sólo el grupo de archivos principal. FILEGROUP = { logical_filegroup_name logical_filegroup_name | @logical @ logical_filegroup_nam _filegroup_name_var e_var }
Es el nombre lógico de un grupo de archivos de sólo lectura o una variable cuyo valor equivale al nombre lógico de un grupo de archivos de sólo lectura que se va a incluir en la copia de seguridad parcial. Para obtener más información, vea "", anteriormente en este tema. n
Es un marcador de posición que indica que se pueden especificar varios grupos de archivos de sólo lectura en una lista separada por comas. TO [ ,...n ]
Indica que el conjunto de dispositivos de copia de seguridad correspondiente es un conjunto de medios no reflejado o el primero de los reflejos de un conjunto de medios reflejado (para los que se declaran una o más cláusulas MIRROR TO).
SQL SQ L Server Server - Admin istració n
Pág. 29
Universidad Nacional de Ingeniería
Especifica el dispositivo de copia de seguridad físico o lógico que se va a utilizar para la operación de copia de seguridad. { logical_device_name | @logical_device_name_var }
Es el nombre lógico del dispositivo de copia de seguridad en que se hace la copia de seguridad de la base de datos. El nombre lógico debe seguir las reglas definidas para los identificadores. Si se proporciona como una variabl v ariable e (@logical_device_name_var), (@logical_device_name_var), el nombrededel dispositivo de copia de seguridad se puede especificar de como constante cadena (@logical_device_name_var = nombre del dispositivo copiauna de seguridad lógico) o como una variable de un tipo de datos de cadena de caracteres, excepto los tipos de datos ntext o text. { DISK | TAPE } = { 'physical_device_name' 'physical_device_name' | @physical @ physical_device_n _device_name_var ame_var }
Especifica un archivo de disco o un dispositivo de cinta. No es necesario necesario que exista un disposi dispositivo tivo de disco antes de que se especifi especifique que en una instrucción BACKUP. Si el dispositivo físico existe y no se especifica la opción INIT en la instrucción BACKUP, la copia de seguridad se anexa al dispositivo. n
Es un marcador de posición que indica que se pueden especificar hasta 64 dispositivos de copia de seguridad en una lista separada por comas. MIRROR TO [ ,...n ]
Especifica un conjunto de uno o varios dispositivos de copia de seguridad que reflejarán los dispositivos de copia de seguridad especificados en la cláusula TO. La cláusula MIRROR TO debe incluir el mismo número y tipo de dispositi dispositivos vos de copia de seguridad que la cláusula TO. El número máximo de cláusulas MIRROR TO es tres. Esta opción sólo está disponible en SQL Server 2014 Enterprise Edition y versiones posteriores.
Vea "", "", en un apartado anterior de es esta ta sección. n
Es un marcador de posición que indica que se pueden especificar hasta 64 dispositivos de copia de seguridad en una lista separada por comas. El número de dispositivos de la cláusula MIRROR TO debe ser igual al número de dispositivos de la cláusula TO. [ next-mirror-to ]
Es un marcador de posición que indica que una sola instrucción BACKUP puede contener hasta tres cláusulas MIRROR TO, además de una sola cláusula TO. Opcio nes de WITH Opciones Especifica las opciones que se van a utilizar con una operación de copia de seguridad. DIFFERENTIAL Se utiliza sólo con BACKUP DATABASE. Especifica que la copia de seguridad de la base de datos o el archivo sólo debe estar compuesta por las partes de la base de datos o el archivo que hayan cambiado desde la última copia de seguridad completa. Una copia de seguridad diferencial suele ocupar menos espacio que una copia de seguridad seguridad completa. Utilice esta opción para que no tenga que aplicar todas las copias de
Pág. 30 30
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas seguridad de registros individuales efectuadas desde que se realizó la última copia de seguridad completa. DESCRIPTION = { 'text' | @text_variable }
Especifica el texto de forma libre que describe el conjunto de copia de seguridad. La cadena puede tener un máximo de 255 caracteres. NAME = { backup_set_name | @backup_set_var }
Especifica el nombre del conjunto de copia de seguridad. Los nombres pueden tener un máximo de 128 caracteres. Si no se especifica NAME, está en blanco. PASSWORD PASSWOR D = { password | @password_variable }
Establece la contraseña del conjunto de copia de seguridad. PASSWORD es una cadena de caracteres.
Utilizando Util izando el Ma Management nagement del SQ SQL L Server Primero nos ubicamos en el explorador de objetos, y luego hacemos clic derecho sobre la base de datos, seguidamente, haremo haremoss clic sobre la opción de propiedades de la base de datos.
SQL SQ L Server Server - Admin istració n
Pág. 31
Universidad Nacional de Ingeniería
Luego, en la opción “Modo de Recuperación”, seleccionaremos la alternativa “Completa”, con la cual, podremos realizar todos los tipos de Backup de nuestra Base de Datos. Una vez cambiadas las propiedades de nuestra base de datos, haremos clic derecho sobre la base de datos de la que queremos una copia de seguridad, en la opción “Tasks”, seleccionamos seleccionam os “Back Up..” (ver figura).
Restaurando Re staurando una B BD D Para realizar la restauración de una Base de Datos, podemos hacer uso de la instrucción RESTORE, o de lo contrario, utilizar el management Sql Server. RESTORE (Transact-SQL) Restaura copias de seguridad realizadas con el comando BACKUP. Este comando le permite realizar los siguientes escenarios de restauración: Restaurar una base de datos co completa mpleta a parti partirr de una copia copia de seguridad completa de la base de datos (restauración completa) completa).. Restaurar parte de una base de datos (restauración parcial). Restaurar archivos o grupos de ar archivos chivos en en una base de de datos (restauración (restauración de archivos). Restaurar páginas específicas en un una a base base de datos ((restauración restauración de páginas). páginas). Restaurar un registro registro de transacciones transacciones en una bas base e de datos (restauración del registro de transacciones). Revertir una base de datos datos al punto te temporal mporal capturado por una instantánea de la base de datos.
•
•
•
• •
•
--To Restore an Entire Database from a Full database backup (a Complete Restore): RESTORE DATABASE { database_name | @database_name_var } [ FROM [ ,...n ] ] [ WITH { [ RECOVERY | NORECOVERY | STANDBY = ]{standby_file_name | @standby_file_name_var } | , [ ,...n ] | , | , | , | , } [ ,...n ] ] [;]
--To perform the first step of the initial restore sequence -- of a piecemeal restore: RESTORE DATABASE { database_name | @database_name_var } [ ,...n ] [ FROM [ ,...n ] ] WITH PARTIAL, NORECOVERY
Pág. 32 32
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas [ , [ ,...n ] | , ] [ ,...n ] [;] --To Restore Specific Files or Filegroups: RESTORE DATABASE { database_name | @database_name_var } [ ,...n ] [ FROM [ ,...n ] ] WITH { [ RECOVERY | NORECOVERY ] [ , [ ,...n ] ] } [ ,...n ] [;]
Permisos Si la base de datos que se va a restaurar no existe, el usuario debe tener permisos CREATE DATABASE para poder ejecutar RESTORE. Si la base de datos existe, los permisos RESTORE corresponden de forma predeterminada a los miembros de las funciones fijas de servidor sysadmin y dbcreator, y al propietario (dbo) de la base de datos (para la opción FROM DATABASE_SNAPSHOT, la base de datos siempre existe). Los permisos RESTORE se conceden a funciones en las que la información acerca de los miembros está siempre disponible para el servidor. Debido a que los miembros de una función fija de base de datos sólo se pueden comprobar cuando la base de datos es accesible y no está dañada, lo que no siempre ocurre cuando se ejecuta RESTORE, los miembros de la función fija de base de datos db_owner no tienen permisos RESTORE. La operación de copia de seguridad puede especificar opcionalmente contraseñas de un conjunto de medios, de un conjunto de copia de seguridad o de ambos. Si se ha definido una contraseña en un conjunto de medios o un conjunto de copia de seguridad, debe especificar la contraseña o contraseñas correctas en la instrucción RESTORE. Estas contraseñas impiden operaciones de restauración y anexiones anex iones no autorizadas de los conjuntos de copia deprotegidos seguridad en que utilizan herram herramientas ientas der SQL Server. No obstante, los medios conmedios contraseña se pueden sobrescribi sobrescribir mediante la opción FORMAT de la instrucción BACKUP. Ejemplos sobre el uso del RESTORE A. Restau Res tau rar un a base bas e de d dato atoss c ompl om pleta eta En el siguiente ejemplo se restaura una copia de seguridad completa de la base de datos desde un dispositivo dispositivo lógico de copia de seguridad de AdventureWorksBac AdventureWorksBackups kups RESTORE DATABASE AdventureWorks FROM AdventureWorksBackups
B. Restaurar Restaurar copi as de seguridad de bases de datos comp letas y dif diferenciale erencialess En el siguiente ejemplo se restaura una copia de seguridad completa después de una copia de seguridad diferencial ks.bak, del dispositivo copia seguridad Z:\SQLServerBackup Z:\SQLServerBackups\AdventureWor s\AdventureWorks.bak, que contiene de las dos copiasdede seguridad.
SQL SQ L Server Server - Admin istració n
Pág. 33
Universidad Nacional de Ingeniería
La copia de seguridad de bases de datos completa que se va a restaurar es el sexto conjunto de copias de seguridad del dispositivo (FILE = 6), y la copia de seguridad de base de datos diferencial es el noveno nov eno conjunto del dispositivo (FILE = 9). En cuanto se recupere la copia de seguridad diferencial, se recuperará la base de datos. RESTORE DATABASE AdventureWorks FROM DISK = 'Z:\SQLServerBackups\AdventureWorks.bak' WITH FILE = 6 NORECOVERY; RESTORE DATABASE AdventureWorks FROM DISK = 'Z:\SQLServerBackups\AdventureWorks.bak' WITH FILE = 9 RECOVERY;
C. Restaur Restaurar ar una base de datos con la sin taxis de RESTART RESTART En el ejemplo siguiente se usa la opción RESTART para reiniciar una operación RESTORE interrumpida por un error de alimentaci alimentación ón del servidor. -- This database RESTORE halted prematurely due d ue to power failure. RESTORE DATABASE AdventureWorks FROM AdventureWorksBackups -- Here is the RESTORE RESTART operation. RESTORE DATABASE AdventureWorks FROM AdventureWorksBackups WITH RESTART
D. Restaurar Relestaurar base desedatos y mover En ejemplouna siguiente restaura una arch baseivos de datos completa y el registro de transacciones, y se mueve la base de datos restaurada al directorio C:\Program Files\Microsoft Files\Micr osoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data. Server\MSSQL10.MSSQLSERVER\MSSQL\Data. RESTORE DATABASE AdventureWorks FROM AdventureWorksBackups WITH NORECOVERY, MOVE 'AdventureWorks_Data' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf', MOVE 'AdventureWorks_Log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.ldf' RESTORE LOG AdventureWorks FROM AdventureWorksBackups WITH RECOVERY
Pág. 34 34
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
APIT ITULO ULO 4 C AP
Administración Administración de la Seguridad Modos de autenticidad Creación de Usuarios Uso de Credencial Credenciales es y Permisos
SQL SQ L Server Server - Admin istració n
Pág. 35
Universidad Nacional de Ingeniería
A
D M I N I S T R A C I Ó N
D E
L A
S
E G U R I D A D
La seguridad es una consideraci c onsideración ón primordial cuando se diseña y administra un entorno de base de datos, aquí, daremos a conocer los compone componentes ntes funda fundamentales mentales de seguridad de SQL Server: entidades de seguridad, protegibles y el modo en que se aplican los permisos dentro del modelo de seguridad de SQL Server.
¿Qué ¿Q ué son llas as e enti ntidades dades de se segur gurid idad? ad? SQL Server 2014 emplea el término entidad de seguridad para referirse a las identidades autenticadas en un sistema de SQL Server. La comprensión de las diferentes entidades de seguridad que pueden existir en un sistema de SQL Server le ayudará a planear su modelo de seguridad.
Una entidad de seguridad es cualquier identidad identidad autenticada a la que se puede conceder permiso para tener acceso a un objeto del sistema de base de datos. SQL Server distingue entre entidades principales indivisibles indivisibles, que son s on identidades únicas (como, por ejemplo, inicios de sesión), y entidades de seguridad de colección, que son colecciones de identidades (tales como funciones fijas de servidor).
Pág. 36 36
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas Las entidades de seguridad existen en tres niveles: Microsoft Windows®, SQL Server y base de datos. Los tipos de entidad de seguridad posibles en cada uno de estos niveles se muestran en la tabla siguiente. s iguiente. Nivel Nivel Windows SQL Server Base de datos
Entidades de seguridad Cuenta de usuario usuario local de Windows Cuenta de usuario de dominio de Windows Grupo de Windows Inicio de sesión de SQL Server Función de SQL Server Usuario de la base de datos Función de la base de datos Función de aplicaci aplicación ón Grupo de bases de datos (sólo para compatibilidad compatibilidad con versiones anteriores)
Nota Los grupos de bases de datos se admiten principalmente por motivos de compatibilidad con versiones anteriores. Debería usar las funciones de base de datos para crear entidades de seguridad de colección en el nivel n ivel de base de datos.
¿Qué ¿Q ué son los pro protegibles? tegibles? Los objetos cuyo acceso está regulado por el sistema de autorización de SQL Server 2014 se denominan protegibles. Como ocurre con las entidades de seguridad, es necesario comprender los diferentes ámbitos de los protegibles en SQL Server para planear su modelo de seguridad.
SQL SQ L Server Server - Admin istració n
Pág. 37
Universidad Nacional de Ingeniería
Los protegibles se organizan en jerarquías j erarquías anidadas llamadas llamadas ámbitos, que también se pueden proteger. Los tres ámbitos protegibles son servidor , base de datos y esquema. Los protegibles en el nivel de Windows W indows incluyen incluyen archivos y cclaves laves del Registro. El ámbito ámbito d e servidor
Los protegibles que contiene el ámbito de servidor incluyen: ■ Inicios de sesión ■ Extremos ■ Bases de datos
El ámbito de base de datos datos
El ámbito de esquema esquema
Los protegibles que contiene el ámbito de base de datos incluyen: ■ Usuarios ■ Funciones ■ Funciones de aplicación ■ Certificados ■ Claves simétricas ■ Claves asimétricas ■ Ensamblados ■ Catálogos de texto completo c ompleto ■ Eventos DDL ■ Esquemas Los protegibles que contiene el esquema incluyen: ■ Tablas ■ Vistas ■ Funciones ■ Procedimientos ■ Tipos ■ Sinónimos ■ Agregados
Nota Tenga en cuenta que una entidad de seguridad también puede ser un protegible. Por ejemplo, un inicio de sesión es una entidad de seguridad, pero también se pueden otorgar permisos en ese inicio de sesión a otros inici inicios os de sesión, s esión, lo que lo convierte en un protegible.
Permi Pe rmiso soss d de e SQ SQL L Server 20 2014 14 SQL Server 2014 usa permisos para controlar el acceso a los protegibles por parte de entidades de seguridad. Para planear su modelo de seguridad para la base de datos, es importante entender cómo se implementan los permisos en los ámbitos de los protegibles.
Pág. 38 38
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
Los permisos son las reglas que gobiernan el nivel de acceso de las entidades de seguridad a los protegibles. Se pueden otorgar, revocar o denegar permisos en un sistema de SQL Server. Todos los protegibles protegibles de SQL Server tienen permisos asociado asociadoss que pueden otorgarse a cada entidad de seguridad. Ejemplo d e permiso Ejemplo La única manera de que una entidad de seguridad pueda tener acceso a un recurso en un sistema de SQL Server es recibir permiso permiso para ello, directa o indirectamente a través de la suscripción de una entidad secundaria como una función o un grupo. Puede administrar administr ar los permisos usando el Explorador de objetos en SQL Server Management Studio o mediante la ejecución de instrucciones instrucciones GRANT, REVOKE REVO KE o DENY. Los permisos concretos asociados a cada uno de los protegibles varían según los tipos de acciones que son compatibles con un protegible. Permisos heredados Permisos heredados Determinados permisos en SQL Server 2014 se pueden heredar a través de un permiso concedido en un nivel más alto de la jerarquía de ámbito del protegible. Por ejemplo: ■
■
Una entidad de seguridad a la que se le ha concedido el permiso SELECT en un esquema automáticamente el permiso SELECT en todos los objetos del esquema.hereda automáticamente Una entidad de seguridad a la que se la ha concedido el permiso CONTROL en un objeto de base de datos hereda automáticamente el permiso CONTROL en todos los protegibles que contiene esa base de datos y todos los protegibles que contienen los esquemas incluidos incluidos en esa base de datos.
Permisos efectivos Los permisos efectivos para una entidad de seguridad se evalúan de la misma manera que en versiones anteriores de SQL Server. Una entidad de seguridad puede realizar una acción determinada si: ■
El permiso se ha concedido explícitamente a la entidad de seguridad o a una colección de la que es miembro m iembro la entidad de seguridad, y…
SQL SQ L Server Server - Admin istració n
Pág. 39
■
Universidad Nacional de Ingeniería
El permiso no se ha denegado explícitamente explícitamente a la entidad de seguridad o a una colección de la que es miembro la entidad de seguridad.
Nota Una instrucción DENY explícita siempre reemplaza a una instrucción instrucción GRANT. Por ejemplo, si a un usuario se le ha concedido explícitamente el permiso SELECT en una tabla determinada pero es miembro de una función a la que se le ha denegado explícitamente el permiso SELECT en la tabla, el usuario no podrá ejecutar una instrucción SELECT en la tabla.
¿Qué ¿Q ué son lo loss mod modos os d de ea autentic utenticación ación d de eS SQ QL Server? SQL Server 2014 puede configurarse para usar uno de los dos modos de autenticación siguientes:
Los usuarios se autentican con Windows y se les concede el acceso a SQL Server mediante un inicio de sesión asignado a su cuenta de Windows (o a un grupo de Windows del que son miembros). Cuando se realiza la solicitud de conexión inicial, inicial, el símbolo de acceso acc eso del usuario, que se emitió cuando se inició sesión en Windows, se presenta a SQL Server y, si se encuentra un inicio de sesión coincidente, se concede al usuario el acceso a SQL Server. Modo de autenticación de Windows.
Modo de autenticación de Windows y SQL Server. Los usuarios que se conectan a SQL Server mediante una conexión de confianza (una conexión de red a través de la cual se
puede pasar el símbolo de acceso de Windows del usuario) tienen acceso a SQL Server mediante la autenticación de Windows. W indows. Además, SQL Server mantiene inicios de sesión
Pág. 40 40
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas no asignados a usuarios de Windows y los usuarios pueden conectarse a SQL Server tras indicar un nombre de inicio de sesión válido y la contraseña que SQL Server valida de forma independiente independient e a Windows. El modo de autenticación de Windows y SQL Server se conoce a veces como modo mixto. N o t a Los inicios de sesión en SQL Server asignados a los usuarios de Windows se
conocen como inicios de sesión de Windows. Los inicios de sesión autenticados en SQL Server se conocen como inicios de sesión de SQL .
Las necesidades de seguridad de sus entornos de servidor y de red determinarán el modo de autenticación que se usará para SQL Server. Puede usar SQL Server Management Studio para establecer el modo de autenticación de su servidor.
C UANDO UANDO USAR EL M ODO ODO DE AUTENTICACIÓN W INDOWS Use el modo de autenticación de Windows en entornos de red en los que todos los usuarios estén autenticados mediante cuentas de usuario de Windows. La autenticación de Windows proporciona varias ventajas sobre s obre la autenticación de SQL Server, como por ejemplo: Le permite permite agregar grupos de usuarios usuarios a SQL Ser Server ver medi mediante ante la agregación de una cuenta de inicio de sesión s esión única. Permite a los usuar usuarios ios un rápido acceso a SQL Ser Server ver sin tener que recordar otra cuenta de inicio de sesión y contraseña.
•
•
SQL SQ L Server Server - Admin istració n
Pág. 41
Universidad Nacional de Ingeniería
UANDO USAR EL M ODO ODO DE AUTENTICACIÓN SQL C UANDO Use el modo de autenticación de Windows y SQL Server cuando deba permitir que se conecten a SQL Server usuarios o aplicaciones que no tienen las credenciales de Windows. A menos que necesite específicamente conexiones a SQL Server que no sean de Windows, no debería habilitar el modo de autenticación de Windows y SQL Server por las razones siguientes:
La autenticación de Windows no exige que los nombres de usuario y las contraseñas pasen por la red al conectarse a SQL Server. En su lugar, se usa el sím símbolo bolo de acceso de usuario de Windows, lo que hace más segura la autenticación de Windows. W indows. La autenticación de Windows requiere menos sobrecarga administrativa, ya que el acceso a SQL Server puede lograrse mediante un inicio de sesión que se asigna a un grupo de Windows, y la administraci administración ón de cada uno de los usuarios usuarios se confina al dominio de Windows. El modo de autenticación de Windows y SQL Server aumenta la superficie del sistema de SQL Server, lo que lo hace m más ás vulnerable ante cualqui cualquier er ataque. m p o r t a n t e Independientemente del modo de seguridad empleado, asegúrese de que la contraseña para el inicio de sesión del administrador del sistema ( sa ) no esté en blanco.
Cómo administrar administ rar inic inicios ios d de e sesión de S SQ QL Se Server rver Puede administrar los inicios de sesión mediante el Explorador de objetos en SQL Server Management Studio o por medio de la ejecución de las instrucciones TransactSQL CREATE LOGIN, ALTER LOGIN y DROP LOGIN.
Pág. 42 42
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
Nota De manera predeterminada, SQL Server está configurado para usar el modo de
autenticación de Windows. Todavía puede crear inicios de sesión de SQL, pero no podrán conectarse al servidor hasta que se cambie el modo de autenticación al modo de autenticación de Windows y SQL Server.
C REANDO INICIOS DE SESIÓN Puede usar la instrucción CREATE LOGIN para crear inicios de sesión de Windows o SQL Server. Las opciones concretas que puede usar dentro de la instrucción CREATE LOGIN dependen de si está creando un inicio de sesión de Windows o un inicio de sesión de SQL Server. El ejemplo siguiente muestra una instrucción CREATE LOGIN que crea un inicio de sesión de Windows para un grupo de Windows local denominado SalesDBUsers SalesDBUsers:: CREATE LOGIN [SERVERX\Vendedor] FROM WINDOWS WITH DEFAULT_DATABASE = AdventureWorks
El ejemplo siguiente muestra una instrucción CREATE LOGIN que crea un inicio de sesión de SQL: CREATE LOGIN DRamos WITH PASSWORD = 'Pa$$w0rd', DEFAULT_DATABASE = AdventureWorks
Las cuentas de usuario de Windows están sujetas a directivas de contraseñas aplicadas por Windows. SQL Server 2014 proporciona restricciones de directiva similares para inicios de sesión de SQL cuando está instalado en W Windows indows Server 2003/2014. Cuando una directiva de contraseñas está habilitada para el servidor, SQL Server la habilita de forma predeterminada para nuevos inicios de sesión de SQL; puede cambiar este comportamientoo mediante las opciones de la instrucción CREATE LOGIN mostradas en comportamient la tabla siguiente.
SQL SQ L Server Server - Admin istració n
Pág. 43
Universidad Nacional de Ingeniería
Opción HASHEDloca HASHEDloca
MUST_CHANGE MUST_CHANGE
CHECK_EXPIRATION CHECK_EXPIRATION
CHECK_POLICY
Descripción Especifica que la contraseña ya se ha comprobado aleatoriamente. aleatori amente. Si no está especificada, la cadena se comprobará aleatoriamente antes del almacenamiento. almacenamiento. Solicita a un inicio de sesión que cambie su contraseña la primera vez que se conecta. Si se especifica esta opción, CHECK_EXPIRATION y CHECK_POLICY deben establecerse en ON. ON. Cuando se encuentra en ON (el valor predeterminado), esta opción especifica que la directiva de caducidad de contraseñas de Windows Server 2003/2014 debería aplicarse al inicio de sesión de SQL Server. Si esta opción se encuentra en ON, la opción CHECK_POLICY también debe estar en ON o se producirá un error en la instrucción. instrucción. Cuando se encuentra en ON (el valor predeterminado), esta directiva especifica que la directiva de complejidad de contraseñas de Windows W indows Server 2003/2014 debería aplicarse al inicio de sesión de SQL Server.
El ejemplo siguiente muestra una instrucción CREATE LOGIN que crea un inicio de sesión de SQL que no está sujeto a la directiva de contraseñas defi definida nida para el servidor: CREATE LOGIN LeoRamos WITH PASSWORD = 'password', DEFAULT_DATABASE = AdventureWorks, CHECK_EXPIRATION = OFF, CHECK_POLICY = OFF
Importante CHECK_EXPIRATION y CHECK_POLICY sólo se aplican en Windows
Server 2003/2014 y posteriores. Además, un problema conocido en Windows Server 2003 podría evitar que se restablezca el recuento de la contraseña incorrecta una vez se haya alcanzado el umbral de bloqueo. bloqueo . Esto podría producir un bloqueo inmediato en los subsiguientes intentos fallidos de inicio de sesión. Puede restablecer manualmente el recuento de la contraseña incorrecta con solo establecer CHECK_POLICY = OFF, seguido por CHECK_POLICY = ON.
M ODIFICANDO ODIFICANDO INICIOS DE SESIÓN Puede modificar un inicio de sesión viendo sus propiedades en el Explorador E xplorador de objetos o mediante la ejecución de la instrucción ALTER LOGIN. Un uso común de la instrucción ALTER LOGIN es desbloquear un inicio de sesión bloqueado por una contraseña caducada. El ejemplo siguiente muestra cómo desbloquear una cuenta bloqueada: ALTER LOGIN dRamos WITH PASSWORD = 'NewPa$$w0rd' UNLOCK
Pág. 44 44
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
E LIMINANDO INICIOS DE SESIÓN Puede eliminar un inicio de sesión haciendo cli clicc sobre él con el botón secundario secundario en el Explorador de objetos y haciendo clic a continuación en Eliminar , o ejecutando la instrucción DROP LOGIN como se s e muestra en el ejemplo siguiente: s iguiente: DROP LOGIN dRamos
¿Qué ¿Q ué son las funcio funciones nes fijas de se servid rvidor? or? Las funciones proporcionan un medio de agrupar usuarios en una sola unidad a la que se pueden aplicar permisos.
SQL Server proporciona funciones de servidor predefinidas para funciones administrativas comunes, de manera que resulte sencillo otorgar una selección de permisos administrativos a un usuario determinado. Las funciones fijas de servidor proporcionan agrupaciones de privilegios administrativos en el nivel de servidor. Se administran administr an de forma independiente a las bases de datos de usuari usuarios os en el servidor. Además de las funciones fijas de servidor mostradas en la tabla anterior, cada instancia de SQL Server contiene una función fija de servidor especial denominada pública pública,, de la que todos los inicios de sesión son miembros. La función fija de servidor pública recibe el permiso VIEW ANY DATABASE.
SQL SQ L Server Server - Admin istració n
Pág. 45
Universidad Nacional de Ingeniería
Permiso rmisoss d de eá ámbito mbito de se servido rvidorr Los protegibles del ámbito de servidor incluyen objetos como el mismo servidor, los inicios de sesión y las bases de datos.
La tabla siguiente muestra algunos permisos de ejemplo en el ámbito de servidor. Para obtener una lista completa de los permisos, consulte “Permisos” en los Libros en pantalla de SQL Server. Protegible Servidor
Permiso CONNECT_SQL CREATE LOGIN ALTER ANY LOGIN
CONTROLSERVER Login Base de datos
ALTER IMPERSONATE CREATE TABLE ALTER ANY USER CONTROL
Descripción Conectarse al servidor. Crear un inicio de sesión. Modificar cualquier inicio de sesión en el ámbito de servidor. Control administrativo de todo el sistema. Modificar el inicio de sesión. Suplantar el inicio de sesión. Crear una tabla en la base de datos. Modificar cualquier usuario de la base de datos. Control completo de la base de datos.
¿Qué ¿Q ué son las fu funcio nciones nes de base de datos? SQL Server proporciona dos tipos de funciones en el nivel de base de datos: funciones func iones fijas de base de datos y funciones de base de datos definidas por el usuario.
Pág. 46 46
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
Las funciones fijas de base de datos proporcionan a las agrupaciones privilegios administrativos administr ativos en el nivel de base de datos a las que se han concedido permisos permisos para las tareas comunes de la base de datos. Las funciones fijas de base de datos de una base de datos se describen en la tabla siguiente. Función db_accessadmin db_accessad min db_backupoperator db_backupoper ator db_datareader db_datareader db_datawriter db_datawri ter db_ddladmin db_ddlad min db_denydatareader db_denydatareader db_denydatawriter db_denydataw riter db_owner db_securityadmin db_securit yadmin public
Descripción Agregar o quitar usuarios, grupos y funciones de la base de datos. Realizar una copia de seguridad de la base de datos. Leer datos de cualquier tabla. Agregar, cambiar o eliminar datos de cualquier tabla. Agregar, modificar o eliminar objetos de la base de datos. No poder leer los datos de ninguna tabla. No poder cambiar los datos de ninguna tabla. Realizar cualquier actividad de función de base de datos. Cambiar las funciones de la base de datos, cambiar las funciones de aplicación, crear esquemas. Mantener los permisos predeterminados. predeterminados.
¿Qué ¿Q ué son las funcio funciones nes de aplicación aplicación? ? Las funciones de aplicación permiten cumplir con la seguridad para una aplicación determinada. Proporcionan un contexto de seguridad alternativo para que un usuario tenga acceso a una base de datos. El usuario ejecuta una aplicación asociada a una función de aplicación y el contexto de seguridad de la función de aplicación se usa en lugar del usuario individual.
SQL SQ L Server Server - Admin istració n
Pág. 47
Universidad Nacional de Ingeniería
Permis Pe rmisos os d de eá ámbito mbito de base de datos Los permisos de base de datos son permisos para que una entidad de seguridad pueda ejecutar ciertas tareas dentro de la base de datos. Por ejemplo, el permiso ALTER ANY A NY USER permite que una entidad de seguridad cree, modifique y quite usuarios de una base de datos.
Los permisos del ámbito de base de datos son permisos que pueden aplicarse a protegibles en el ámbito de base de datos, como usuarios, esquemas, funciones, ensamblados y objetos de service broker. La tabla siguiente muestra algunos de los permisos del ámbito de base de datos.
Pág. 48 48
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
APIT ITULO ULO 5 C AP Transferencia Transferencia de Datos Modos de Transferencia Transferencia de Datos Introducción al SQL Ser Server ver Integration Integration Se Services rvices
SQL SQ L Server Server - Admin istració n
Pág. 49
Universidad Nacional de Ingeniería
¿Q
U É E S D A T O S ?
L A
T R A N S F E R E N C I A
D E
La transferencia de datos es el movimiento de datos entre almacenes de datos. El proceso puede ser desde muy simple hasta muy complejo. Prácticamente todas las soluciones de bases de datos requieren algún tipo de transferencia de datos. Normalmente, el proceso de transferir datos de un sistema a otro implica los pasos siguientes: ■ ■ ■
Extraer datos del origen de datos. Transformar los datos (opcional). (opcional). Cargar los datos en el almacén de datos de destino.
Escenarios comunes Los siguientes son escenarios comunes para la transferencia de datos: Trasladar los datos a sistemas de almacenami almacenamiento ento de ddatos. atos. Consolidar Consolidar datos en un lugar a partir partir de varios orígenes. P Por or eje ejemplo, mplo, una oficina comercial central puede contar con una base de datos con datos consolidados consoli dados de todos sus sistemas de almacenamiento almacenamiento remotos. Mover datos de de un sistema heredado a uunn si sistema stema nu nuevo. evo. Mover datos de un si sistema stema no relacional relacional,, como el de Excel Excel® ® de Microsoft Office, a un sistema relacional relacional,, como SQL Server 2014.
¿Qué ¿Q ué e ess la transfo transformació rmación n de datos? Cuando seleccione datos para importarlos a su sistema, los datos podrían no estar en el formato necesario o no cumplir con sus reglas de validación. Con la transformación de los datos se pueden eliminar incoherencias. La transformación de los datos puede significar un simple cambio de los tipos de datos o una transformación compleja mediante código de procedimiento. procedimiento.
Pág. 50 50
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
Herramientas He rramientas para la tr transferencia ansferencia de datos SQL Server 2014 tiene varias herramientas para transferir datos. Cada una de ellas es adecuada para escenarios concretos.
Programa de copia masiva Un Programa de copia masiva (PCM) es un programa de línea de comandos para importar y exportar los datos a archivos de texto. Es una herramienta útil cuando es necesario importar impo rtar o exportar datos desde la línea de comandos o un archivo de proceso por lotes; proporciona un rendimiento rápido con una carga mínima para el sistema. s istema. BULK INSERT BULK INSERT es la versión de Transact-SQL del PCM y tiene muchos de los mismos parámetros. Es útil cuando es necesari necesarioo incluir la funcionali funcionalidad dad de importaci importación ón de datos en su lógica de Transact-SQL. Componente de carga masiva XML La Carga masiva XML es un Modelo de objetos componente (COM) independiente independiente que le permite cargar los datos del Lenguaje de marcado extensible (XML) en las tablas de SQL Server. Debería usar el componente Carga masiva de XML cuando necesite importar una gran cantidad de datos XML y distribuirlos en una o más tablas relacionales. Réplica La réplica es útil cuando dos o más sistemas tienen la misma estructura y no es necesario transformar los datos. Los cambios en el sistema editor se replican en los suscriptores con una frecuencia preconfigurada y algunas formas de réplica permitirán que los propios suscriptores modifiquen los datos. La réplica no es adecuada si los datos deben transformarse o si proceden de un sistema s istema no relacional.
SQL SQ L Server Server - Admin istració n
Pág. 51
Universidad Nacional de Ingeniería
SQL Server Integration Services Los SQL Server Integration Services son un sistema mucho más avanzado para la transferencia y transformación de los datos. Proporciona una arquitectura flexi flexible, ble, rápida y escalable que permite la integración de datos de forma eficaz en entornos empresariales actuales. La transferencia y transformación de los datos puede ser muy sencilla mediante los SSIS, pero también puede conllevar una compleja asignación y validación de datos.
Introducció Introdu cción n a SQ SQL L Server IIntegration ntegration Se Servic rvices es SSIS es una aplicación compleja. SSIS tiene dos motores: un motor en tiempo de ejecución y un motor de flujo de datos. El motor de flujo de datos controla las tareas de extracción, transformación y carga; el motor en tiempo de ejecución controla todo lo demás, incluidas la repetición y la comunicación con procesos externos.
¿QUÉ ES SSIS? SQL Server 2014 Integrati Integration on Services (SSIS) es una plataforma para generar soluciones de integración de datos de alto rendimiento, incluidas la extracción, la transformación y la carga (ETL) de paquetes para el almacenamiento de datos. SSIS se compone de un motor en tiempo de ejecución orientado a operaciones y de un motor de flujo de datos escalable y rápido. El flujo de datos existe en el contexto c ontexto de un flujo de tareas global. El motor en tiempo de ejecución es el que proporciona el recurso en tiempo de ejecución y el soporte operativo para el motor de flujo de datos.
H ERRAMIENTAS Y ASISTENTES DE SSIS SSIS incluye las herramientas y asistentes siguientes, que pueden usarse para crear, configurar, implementar y ejecutar paquetes SSIS: Diseñadores. SSIS ofrece diseñadore diseñadoress integrados en SQL Server Business Intelligence
Development Studio. Juntos, proporcionan el principal entorno de desarroll desarrollo o para crear paquetes SSIS.
Pág. 52 52
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas SSIS incluye varias herramientas administrativas que se pueden usar solas, o bien, se puede obtener acceso a ellas desde SQL Server Management Studio. Estas herramientas administrativas pueden usarse para configurar, implementar y ejecutar paquetes SSIS. Herramientas administrativas.
SSIS incluye utilidades del símbolo de sistema que pueden usarse para ejecutar paquetes SSIS desde la línea de comandos o en un archivo de proceso por lotes. Utilidades del símbolo de sistema.
Los asistentes de SSIS proporcionan una sencilla interfaz de usuario que puede usarse para llevar a cabo las tareas SSIS más habituales.
Asistentes.
C ÓMO ÓMO PROCESA SSIS LAS TAREAS Un paquete está compuesto por un flujo de control y, opcionalmente, por uno o más flujos de datos.
Flujo de control contro l SSIS tiene tres tipos de componentes de flujo de control: contenedores, tareas y restricciones de precedenci precedencia. a. Los contenedores agrupan las tareas en unidades significativas significativas de trabajo y son compatibles con la repetición a través del contenedor para cada miembro de una colección o hasta que una expresión determinada se evalúa como FALSE. Las tareas tareas realizan el trabajo en paquetes. paquetes. Las tar tareas eas pueden: o Extraer, transformar y cargar datos. o Copiar datos. o Comunicarse con otros procesos. o Trabajar con objetos y datos de SQL Server. o Trabajar con o objetos bjetos de A Analysis nalysis Services y procesarlos. o Ejecutar trabajos admini administrativos strativos ccomo omo copias de seguridad. Las tareas tareas también contienen secuencias de comandos comandos para implementar funcionalidades funcionali dades personali personalizadas. zadas.
SQL SQ L Server Server - Admin istració n
Pág. 53
Universidad Nacional de Ingeniería
Las restricciones restricciones de pre precedencia cedencia crean uuna na secuencia secuencia ordenada de ejecución para los contenedores y las tareas.
Flujo de datos El flujo de datos es un tipo especial de tarea dentro de un flujo de control. SSIS tiene tres tipos de componente c omponentess de flujo de datos: orígenes, destinos y transformaciones. Los orígenes extraen los datos de una amplia gama de almacenes de datos que incluyen bases de datos relacionales, archivos de texto y hojas de cálculo. Las transformaciones modifican modifican los datos entre el origen y el destino, e incluyen la validación, agregación y asignación de datos. cualquiera de los almacenes de datos. Los destinos cargan los datos en cualquiera
■
■
■
Usar SQL Server Integration Services Para crear paquetes SSIS es necesario necesario entender cómo se crea cada objeto. A menudo los paquetes se crean en sistemas de desarrollo y se implementan en entornos de producción.
¿QUÉ SON LOS ORÍGENES DE DATOS D ATOS Y LAS VISTAS DE ORIGEN DE DATOS ? SSIS incluye dos objetos en tiempo de diseño que facilitan la implementación de las conexiones en paquetes: orígenes de datos y vistas v istas de origen de datos. Los orígenes de datos y las vistas de origen de datos se crean en un proyecto. A continuación, continuaci ón, estarán disponi disponibles bles para cada paquete de ese proyecto. Los orígenes de datos y las vistas de origen de datos son objetos en tiempo de diseño que no se implementan. En su lugar, SSIS usa las propiedades de los orígenes de datos y las vistas de origen de datos para crear administradores de conexiones.
Pág. 54 54
SQL SQ L Server Server
Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
O RÍGENES DE DATOS Un origen de datos es una referencia en tiempo real a una conexión de almacén de datos. Los orígenes de datos no son necesarios, pero pueden acelerar el desarrollo de un proyecto o de un paquete, dado que muchos administradores de conexión pueden usar el mismo origen de datos. El uso de orígenes de datos en paquetes SSIS proporciona las ventajas siguientes: Los orígenes orígenes de de dato datoss están disponi disponibles bles par para a un proyecto completo. Puede definir un origen de datos una vez y, a continuación, hacer referencia a él en los administradores de conexión de varios v arios paquetes dentro del proyecto. Cuando se crea un ad administrador ministrador de conexión conexión medi mediante ante un origen de datos, el administrador administr ador de conexión copia la cadena de conexiones del origen de datos. El administrador de conexión no exige que el origen de datos funcione y que continúe funcionando si el origen de datos no está disponible. Si cambia las las propi propiedades edades de un ori origen gen de datos, llas as cadenas de conexión conexión de todos los objetos basadas en el origen de datos cambiarán.
V ISTAS DE ORIGEN DE DATOS Una vista de origen datos proporciona un almacén subconjunto de datos de un origen deigen datos. Puede incluir una ode más tablas o vistas del de datos definidas en el origen or de datos y puede aplicar un filtro a una vista de origen de datos para quitar las filas no deseadas. Puede agregar columnas calculadas y nuevas relaciones entre las tablas y reemplazar las tablas en el origen de datos con consultas. Cuando un componente usa una vista de origen de datos, almacena una instrucción Transact-SQL. Por consiguiente, el objeto no se ve v e afectado incluso si la vista v ista de origen de datos no está disponible. Si la vista de origen de datos cambia las tablas a las que hace referencia, este cambio no se reflejará en los objetos basados en ella. El uso de vistas de orígenes de datos en paquetes SSIS proporciona las ventajas siguientes: Una vista de ori origen gen de datos sólo sólo puede mostrar llos os objetos pertinentes. Un origen de datos mostrará cada tabla en el almacén de datos subyacente. Las vistas de origen de datos está estánn di disponibles sponibles para un proyecto completo. Puede definir una vista de origen de datos una vez y, a continuación, hacer referencia a ella en los objetos de varios paquetes dentro del proyecto. Puede actualizar actualizar una vista de or origen igen de datos para rreflejar eflejar los cambios cambios en sus orígenes de datos subyacentes. Una vista de ori origen gen de datos almacena almacena een n memoria memoria caché los metadatos metadatos de los orígenes de datos subyacentes, lo que le permite desconectarse del almacén de datos subyacente y seguir editando las propiedades de la vista de origen de datos.
¿Qué ¿Q ué e ess un adminis administrador trador d de e conexión? Un administrador de conexión es una representación lógica de una conexión. Se crea un administrador de conexión en tiempo de diseño para describi describirr la conexión física que SSIS crea cuando el paquete se ejecuta. SSIS crea la conexión física mediante la cadena de conexión y otros ot ros atributos del administrador de conexión. Un paquetepuede puedetener tener atributos varios administradores de conexión, y cada administrador de conexión diferentes. Por esta razón, podría crear varios
SQL SQ L Server Server
Admin istració n
Pág. 55
Universidad Nacional de Ingeniería
administradores de conexión para el mismo almacén de datos, cada uno con propiedades ligeramente diferentes.
T IPOS DE ADMINISTRADORES DE CONEXIÓN Como se describe en la tabla siguiente, SSIS proporciona distintos tipos de administradores de conexión que permiten que los paquetes se conecten a diversos orígenes de datos y servidores.
TIPO TIPO ADO ADO.NET EXCEL FILE FLATFILE FTP HTTP MSMQ MSOLAP100 MULTIFILE MULTIFLATFILE OLEDB ODBC
DESCRIPCIÓN Se conecta a orígenes orígenes de datos de Objetos de datos de ActiveX® (ADO) Se conecta a un origen de datos mediante un proveedor .NET Se Excel Se conecta conecta aa un un archivo archivo de o alibro una de carpeta Se conecta a un origen de datos de archivo plano Se conecta a un servidor de Protocolo de transferencia de archivos (FTP) Se conecta a un servidor web Se conecta a una cola de mensajes Se conecta a una instancia de SQL Server 2014 Analysis Analysis Services (SSAS) o a un proyecto de Analysis Services Se conecta a varios archivos y carpetas Se conecta a varios archivos de datos y carpetas Se conecta a un origen de datos mediante un proveedor OLE DB Se conecta a un origen de datos mediante la Conectividad abierta abierta de bases de datos (ODBC)
Pág. 56 56
SQL SQ L Server Server
Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas SMOServer SMTP SQLMOBILE WMI
Se conecta a un servidor de Objetos de administración SQL (SMO) Se conecta a un servidor de correo de Protocolo simple de transferencia de correo Se conecta a una base de datos SQL Server Mobile Se conecta a un servidor y especifica el ámbito del Instrumental de administración de Microsoft Windows® (WMI) en el servidor
¿Qué ¿Q ué es una tarea de flu flujo jo d de e datos? La tarea de flujo de datos es una tarea especial que abarca las operaciones de extracción, transformación y carga de SSIS. Aparece en la página Flujo de control como una tarea normal, pero tiene su propia ficha porque está compuesta por varios componentes. El origen extrae datos de almacenes de datos relacionales y no relacionales, como bases de datos de SQL Server, hojas de cálculo de Excel y bases de datos de Analysis Services. La transformación transforma los datos mediante asignación delElorigen al carga destino y la limpieza, agregación agregación y modificación de los datos yladel esquema. destino datos en almacenes de datos o los almacena en conjuntos de datos en memoria.
Origen El origen es la conexión c onexión al almacén de datos del que necesita extraer datos. Normalmente genera un resultado compuesto por varias columnas. Muchos orígenes también tienen una salida de error que tiene todas las columnas de la salida normal más dos columnas adicionales para la información de errores. Aunque la mayoría de los orígenes sólo tienen una salida normal, puede codificar c odificar y personalizar los orígenes para tener varias salidas normales y varias salidas de error.
SQL SQ L Server Server - Admin istració n
Pág. 57
Universidad Nacional de Ingeniería
Transformación Una transformación puede ser una simple columna que se asigna entre el origen y el destino, pero también puede realizar complejas operaciones de modificación y limpieza en los datos. Las transformacione transformacioness tienen una entrada y una salida normal, cada una de ellas compuesta de una o más columnas. También pueden tener una salida de errores. Las transformaciones son los componentes del flujo de datos de un paquete que agregan, combinan, distribuyen y modifican los datos. También pueden realizar las operaciones de búsqueda y generar conjuntos de datos de muestra.
Destinos El destino es la conexión al almacén de datos en el que necesita cargar datos. Tiene por lo menos una entrada, que tiene por lo menos una columna. Un destino puede dar salida a información de errores así como recibir datos. Puede codificar y personalizar los destinos para tener varias entradas y salidas de errores.
Pág. 58 58
SQL SQ L Server Server - Admin istración
Facultad de Ingeniería Industrial y de Sistemas Sistemas
APIT ITULO ULO 6 C AP
Automatización Automatización de Tareas Admini Administrativas strativas Beneficios de la Automatizaci Automatización ón Uso del SQL Server Agent Creando Trabajos y Operadores Monitoreando los trabajos
Creación de Alertas
SQL SQ L Server Server - Admin istració n
Pág. 59
Universidad Nacional de Ingeniería
M
O N I T O R E A N D O
A L
SQL S
E R V E R
2014
La supervisión es importante porque SQL Server proporciona un servicio en un entorno dinámico. Los datos de la aplicación cambian, el tipo de acceso que los usuarios requieren cambia y la manera en que los usuarios se conectan cambia. SQL Server administra administr a automáticamente recursos a nivel de sistema como la memoria y el espacio en disco, pero la supervisión permite a los administr administradores adores identificar las tendencias de rendimiento para determinar si es necesario efectuar cambios.
¿Qué ¿Q ué e ess el Monit Monitor or d de ea acti ctivid vidad? ad? El Monitor de actividad es una herramienta gráfica de SQL Server Management Studi Studioo que muestra información sobre los procesos de usuario y bloqueos actuales. Puede usar el Monitor de actividad para solucionar problem problemas as de ssimultanei imultaneidad, dad, como los retrasos excesivos en consultas, mientras se liberan los bloqueos o los procesos paralizados que tienen lugar cuando dos procesos esperan a que se liberen los bloqueos y ninguno de ellos puede continuar.
Páginas del Monitor de actividad Páginas El Monitor de actividad muestra información sobre las conexiones abiertas y los bloqueos actuales. Puede ver información en el Monitor de actividad en tres páginas: Información del proceso proceso,, Bloqueos por proceso y Bloqueos por objeto. objeto .
View more...
Comments