SlideShare une entreprise Scribd logo
1  sur  150
Télécharger pour lire hors ligne
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 1
C
CA
AP
PI
IT
TU
UL
LO
O 1
1
 Instalación y configuración del SQL Server 2008
 Ediciones del SQL Server 2008
 Requerimientos de Hardware y Software
Universidad Nacional de Ingeniería
Pág. 2 danielramoscastaneda@hotmail.com SQL Administración
I N S T A L A C I O N Y C O N F I G U R A C I O N D E L
S Q L S E R V E R 2 0 0 8
Una de las primeras 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 2008.
¿QUÉ ES SQL SERVER 2008?
SQL Server 2008 es una plataforma global de base de datos que ofrece administración
de datos empresariales con herramientas integradas de inteligencia empresarial (BI). El
motor de la base de datos SQL Server 2008 ofrece almacenamiento más seguro y
confiable tanto para datos relacionales como estructurados, lo que le permite crear y
administrar aplicaciones de datos altamente disponibles y con mayor rendimiento para
utilizar en su negocio.
El motor de datos SQL Server 2008 constituye el núcleo de esta solución de
administración de datos empresariales. Asimismo, SQL Server 2008 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, escritorios 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 2008. 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 2008 ofrece soluciones innovadoras
que le ayudan a obtener más valor de sus datos.
HERRAMIENTAS QUE INCLUYE EL SQL SERVER 2008
Base de datos relacional. 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 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 con sistemas heterogéneos, incluidas las bases de datos Oracle
existentes.
Notification Services. Capacidades avanzadas de notificación para el desarrollo y el
despliegue de aplicaciones escalables que pueden entregar actualizaciones de
información personalizadas y oportunas a una diversidad de dispositivos conectados y
móviles.
Integration Services. Capacidades de extracción, transformación y carga (ELT) de
datos para almacenamiento e integración de datos en toda la empresa.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 3
Analysis Services. 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.
Reporting 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. 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
acceso de datos estándar reducen drásticamente el tiempo que demanda integrar los
datos en SQL Server con los sistemas existentes. Asimismo, el soporte del servicio
Web nativo está incorporado en SQL Server para garantizar la interoperabilidad con
otras aplicaciones y plataformas.
Herramientas de desarrollo. SQL Server ofrece herramientas integradas de
desarrollo para el motor de base de datos, extracción, transformación y carga de
datos, minerí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 (API)
para ampliar el sistema de datos en cualquier dirección que sea específica de su
negocio.
NOVEDADES EN SQL SERVER 2008
SQL Server permite ejecutar aplicaciones de misión crítica, reduciendo costos de
administración de infraestructura de datos y brindando introspectiva e información a
todos los usuarios.
 Confiable: Permite a las organizaciones ejecutar sus aplicaciones más críticas
con niveles de seguridad, confiabilidad y escalabilidad muy altos.
 Productivo: Permite reducir el tiempo y los costos requeridos para desarrollar y
administrar sus infraestructuras de datos.
 Inteligente: Ofrece una plataforma integral que brinda introspectiva e
información donde sus usuarios lo desean
Nuevas funcionalidades de SQL Server 2008:
Protección de la Información
 ¿Cómo podría saber si ha copiado la base de datos del servidor de producción
de un cliente y lo han instalado en otra base de datos o si están accediendo a
la información? Con SQL 2008, puede proteger la información con una clave de
protección (Encriptación).
 ¿Cómo podría saber que datos están siendo leídos y modificados, a qué hora y
por quien? SQL 2008 da la opción de Auditora de Datos.
Continuidad del Negocio
 Si sus clientes necesitan estar siempre en línea con sus sistemas sin caídas,
SQL 2008 ofrece mejoras en una técnica llamada “Mirroring”, el cual es una
copia o espejo de la base de datos.
 Si el disco se daña, donde reside los datos, SQL 2008 recupera la información
de una copia reciente de los datos dañados al otro equipo espejo de manera
transparente.
Universidad Nacional de Ingeniería
Pág. 4 danielramoscastaneda@hotmail.com SQL Administración
 Ahorro en espacio en disco, mediante la técnica de comprensión, ahorrando
costos en compra de discos si es que el volumen de la información de Base de
Datos empieza a crecer en forma rápida.
Datos Geoespaciales
 Poder manejar información geográfica, la que hoy en día es de alta importancia
en las organizaciones, con todo el tema de globalización
Acceder a la Información desde cualquier lugar en cualquier momento
 Con SQL 2008 podre crear rápidamente aplicaciones conectadas a la base de
datos con la funcionalidad de funcionar en forma desconectada y después
sincronizarlos con la base de datos central sin perder la línea de negocio y
manteniendo los datos validados
Reportes
 Poder acceder a reportes directamente desde Word, mejoras en los tipos de
gráficos en los reportes, haciéndolos más entendibles y poder editar los
reportes de Microsoft Office, sin saber donde fue diseñado el reporte.
LAS EDICIONES DEL SQL SERVER 2008
Cada una de las ediciones que se encuentran disponibles en el mercado, está dirigida
a un grupo, para responder adecuadamente a las necesidades y requisitos de estos.
EDICIONES DE SERVIDOR
Término Definición
Enterprise
(x86, x64 e
IA64)1
SQL Server Enterprise es una completa plataforma de datos que proporciona
escalabilidad empresarial, rendimiento, alta disponibilidad y capacidades avanzadas de
inteligencia empresarial para ejecutar aplicaciones seguras y esenciales para la
empresa. Para obtener más información, vea http://msdn.microsoft.com/es-
es/library/cc645993(v=SQL.100).aspx .
Standard
(x86 y x64)
SQL Server Standard es una completa plataforma de datos que proporciona facilidad
de uso y capacidad de administración. Esto incluye capacidades integradas de
inteligencia empresarial para ejecutar aplicaciones de departamentos. Para obtener
más información, vea http://msdn.microsoft.com/es-
es/library/cc645993(v=SQL.100).aspx .
SQL Server Standard for Small Business contiene todos los componentes técnicos y
capacidades técnicas de SQL Server Standard y su uso está autorizado en un entorno
de pequeña empresa con 75 equipos o menos.
EDICIONES ESPECIALIZADAS
Término Definición
SQL Server 2008
Developer (x86,
x64 e IA64)
SQL Server 2008 Developer permite a los desarrolladores crear cualquier tipo de
aplicación basada en SQL Server. Incluye toda la funcionalidad de SQL Server
2008 Enterprise, pero su uso está autorizado como sistema de desarrollo y
pruebas, no como servidor de producción. SQL Server 2008 Developer es una
opción ideal para las personas que crean y prueban aplicaciones. Puede
actualizar SQL Server 2008 Developer para utilizarlo en producción.
Workgroup (x86 y
x64)
SQL Server Workgroup es ideal para ejecutar bases de datos ubicadas en
sucursales y proporciona una administración de datos confiable y una
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 5
Término Definición
plataforma de informes que incluye capacidades de sincronización y de
administración seguras y remotas.
Web (x86, x64) SQL Server 2008 Web es una opción con un costo total de propiedad bajo para
los hosts de web y los sitios web que proporciona capacidades de administración
y escalabilidad para propiedades web, tanto de pequeña como de gran escala.
SQL Server Express
(x86 y x64)
SQL Server Express
with Tools (x86 y
x64)
SQL Server Express
con Advanced
Services (x86 y
x64)
La plataforma de bases de datos de SQL Server Express se basa en SQL Server
2008. Es también la sustitución de Microsoft Desktop Engine (MSDE). Gracias a
su integración con Visual Studio, SQL Server Express facilita el desarrollo de
aplicaciones controladas por datos que tienen una gran capacidad, ofrecen un
almacenamiento seguro y se implementan con rapidez.
SQL Server Express es gratuito y los ISV pueden redistribuirlo (según su
contrato). SQL Server Express es ideal para conocer y crear pequeñas
aplicaciones de servidor y de escritorio. Esta edición es la mejor opción para los
fabricantes de software independientes, los desarrolladores no profesionales y
los aficionados que crean aplicaciones cliente. Si necesita características de base
de datos más avanzadas, SQL Server Express se puede actualizar sin problemas a
versiones más sofisticadas de SQL Server.
Compact 3.5 SP1
(x86)
Compact 3.1 (x86)
SQL Server Compact 3.5 es una base de datos gratuita e incrustada, ideal para
crear aplicaciones independientes que se conectan ocasionalmente para
dispositivos móviles, escritorios y clientes web en todas las plataformas de
Windows.
COMPONENTES QUE VIENEN A ESCOGER EN EL SQL SERVER
Componentes de
servidor
Descripción
SQL Server Database
Engine (Motor de base de
datos de SQL Server)
SQL Server Database Engine (Motor de base de datos de SQL Server)
incluye Database Engine (Motor de base de datos), el servicio principal
para almacenar, procesar y proteger datos; también incluye replicación,
búsqueda de texto completo y herramientas para administrar datos XML
y relacionales.
Analysis Services Analysis Services incluye las herramientas para crear y administrar
aplicaciones de procesamiento analítico en línea (OLAP) y de minería de
datos.
Reporting Services Reporting Services incluye componentes de servidor y de cliente para
crear, administrar e implementar informes tabulares, matriciales, gráficos
y de forma libre. Reporting Services también es una plataforma
extensible que puede utilizarse para desarrollar aplicaciones de informes.
Integration Services Integration Services es un conjunto de herramientas gráficas y objetos
programables para mover, copiar y transformar datos.
Herramientas de
administración
Descripción
SQL Server Management
Studio
SQL Server Management Studio es un entorno integrado para tener
acceso, configurar, administrar y desarrollar componentes de SQL Server.
Universidad Nacional de Ingeniería
Pág. 6 danielramoscastaneda@hotmail.com SQL Administración
Herramientas de
administración
Descripción
Management Studio permite a los desarrolladores de software y
administradores con diferentes grados de experiencia usar SQL Server.
Para la instalación de Management Studio, se requiere Internet Explorer 6
Service Pack 1 o una versión posterior.
Administrador de
configuración de SQL
Server
El Administrador de configuración de SQL Server proporciona
administración de configuración básica para los servicios, protocolos de
servidor, protocolos de cliente y alias de cliente de SQL Server.
SQL Server Profiler SQL Server Profiler proporciona una interfaz gráfica de usuario para
supervisar una instancia del Database Engine (Motor de base de datos) o
de Analysis Services.
Asistente para la
optimización de Database
Engine (Motor de base de
datos)
El Asistente para la optimización de Database Engine (Motor de base de
datos) crea conjuntos óptimos de índices, vistas indizadas y particiones.
Business Intelligence
Development Studio
Business Intelligence Development Studio es un IDE para las soluciones
Analysis Services, Reporting Services y Integration Services. Para la
instalación de BI Development Studio, se requiere Internet Explorer 6
Service Pack 1 o una versión posterior.
Componentes de
conectividad
Instala componentes para la comunicación entre clientes y servidores, y
bibliotecas de red para DB-Library, ODBC y OLE DB.
NÚMERO MÁXIMO DE PROCESADORES COMPATIBLES 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 de un solo núcleo e hipersubprocesamiento con dos CPU
lógicas por socket.
 Un procesador de doble núcleo con dos CPU lógicas.
 Un procesador de núcleo cuádruple con cuatro CPU lógicas.
 SQL Server se utiliza bajo licencia para cada socket del procesador y no para
cada CPU lógica.
Edición de SQL Server 2008 Número de procesadores admitidos
Enterprise Sistema operativo máximo
Developer Sistema operativo máximo
Standard 4
Web 4
Workgroup 2
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 7
Edición de SQL Server 2008 Número de procesadores admitidos
Express 1
Express with Tools 1
Express con Advanced Services 1
REQUISITOS DEL SISTEMA SQL SERVER 2008
Componente Requisito
Marco de
trabajo2
El programa de instalación de SQL Server instala los siguientes componentes de
software requeridos por el producto:
.NET Framework 3.5 SP11
SQL Server Native Client
Archivos auxiliares para la instalación de SQL Server
Software2
El programa de instalación de SQL Server requiere Microsoft Windows Installer 4.5 o
una versión posterior
Una vez instalados los componentes requeridos, el programa de instalación de SQL
Server comprobará que el equipo en el que se ha instalado SQL Server 2008
también cumple los demás requisitos para su correcta instalación. Para obtener más
información, vea Comprobar los parámetros del Comprobador de configuración del
sistema.
Software de
red
Los requisitos de software de red para las versiones de 64 bits de SQL Server 2008
son los mismos que para las versiones de 32 bits.
Los sistemas operativos compatibles tienen el software de red integrado. Las
instancias predeterminadas y con nombre independientes admiten los siguientes
protocolos de red:
Memoria compartida
Canalizaciones con nombre
TCP/IP
VIA
Nota La memoria compartida y VIA no se admiten en clústeres de conmutación
por error.
Virtualización SQL Server 2008 es compatible con entornos de máquina virtual que se ejecutan en
la función Hyper-V de las ediciones Standard, Enterprise y Datacenter de Windows
Server 2008 R2 y Windows Server 2008. La máquina virtual debe ejecutarse en un
sistema operativo compatible con la edición de SQL Server 2008 concreta que se
cita más adelante en este tema.
Además de los recursos requeridos por la partición primaria, a cada máquina virtual
(partición secundaria) se debe proporcionar suficientes recursos de procesador,
memoria y recursos de disco para su instancia de SQL Server 2008. Los requisitos se
enumeran más adelante en este tema.3
Dentro de la función Hyper-V de Windows Server 2008, se puede asignar un
máximo de cuatro procesadores virtuales a máquinas virtuales que ejecuten las
ediciones de 32 o 64 bits de Windows Server 2008. Se pueden asignar como
máximo 2 procesadores virtuales a equipos virtuales que ejecuten ediciones de 32
bits de Windows Server 2003. Para equipos virtuales que alojan otros sistemas
operativos, se puede asignar como máximo un procesador virtual a equipos
Universidad Nacional de Ingeniería
Pág. 8 danielramoscastaneda@hotmail.com SQL Administración
Componente Requisito
virtuales.
Notas:
Se recomienda cerrar SQL Server 2008 antes de apagar la máquina virtual.
Para obtener más información sobre la función Hyper-V de Windows Server 2008,
vea el sitio web de Windows Server 2008.
La agrupación en clústeres de conmutación por error del invitado se admite en SQL
Server 2008. Para obtener más información sobre las versiones admitidas de SQL
Server y los sistemas operativos para la agrupación en clústeres de conmutación por
error del invitado, y la compatibilidad con la virtualización, vea el tema que trata
sobre la directiva de compatibilidad para los productos de Microsoft SQL Server que
se ejecutan en un entorno virtual de hardware.
Software de
Internet
Para todas las instalaciones de SQL Server 2008 se requiere Microsoft Internet
Explorer 6 SP 1 o una versión posterior. Se requiere Internet Explorer 6 Service Pack
1 o una versión posterior para Microsoft Management Console (MMC), SQL Server
Management Studio, Business Intelligence Development Studio, el componente
Diseñador de informes de Reporting Services y la Ayuda HTML.
Disco duro Las necesidades de espacio en disco variarán con los componentes de SQL Server
2008 que instale. Para obtener más información, vea Requisitos de espacio en disco
duro, más adelante en este tema.
Unidad Para la instalación desde disco se necesita una unidad de CD o DVD.
Pantalla Las herramientas gráficas de SQL Server 2008 requieren VGA o una resolución
mayor: resolución mínima de 1.024 x 768 píxeles.
Otros
dispositivos
Dispositivo señalador: se necesita un mouse Microsoft o dispositivo señalador
compatible.
Nota: Las versiones de 64 bits de SQL Server 2008 incluyen soporte para sistemas
extendidos, también conocidos como Windows on Windows (WOW64). WOW64 es una
característica de las ediciones de 64 bits de Microsoft Windows que permite que las
aplicaciones de 32 bits se ejecuten de forma nativa en modo de 32 bits. Las
aplicaciones funcionan en modo de 32 bits aunque el sistema operativo subyacente se
ejecute en la plataforma de 64 bits.
Componente Requisito
Procesador Tipo de procesador:
Mínimo: AMD Opteron, AMD Athlon 64, Intel Xeon compatible con Intel EM64T,
Intel Pentium IV compatible con EM64T
Velocidad de procesador:
Mínimo: 1,4 GHz
Recomendado: 2,0 GHz o más
Sistema
operativo
Windows Server 2003 SP2 de 64 bits x64 Standard1
Windows Server 2003 SP2 de 64 bits x64 Datacenter1
Windows Server 2003 SP2 de 64 bits x64 Enterprise1
Windows Server 2008 de 64 bits x64 Standard
Windows Server 2008 de 64 bits x64 Standard sin Hyper-V
Windows Server 2008 de 64 bits x64 Datacenter
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 9
Componente Requisito
Windows Server 2008 de 64 bits x64 Datacenter sin Hyper-V1
Windows Server 2008 de 64 bits x64 Enterprise
Windows Server 2008 de 64 bits x64 Enterprise sin Hyper-V1
Windows Server 2008 R2 de 64 bits x64 Web1,2
Windows Server 2008 R2 de 64 bits x64 Standard1,2
Windows Server 2008 R2 de 64 bits x64 Enterprise1,2
Windows Server 2008 R2 de 64 bits x64 Datacenter1,2
Memoria RAM:
Mínimo: 512 MB
Recomendado: 2,048 GB o más
Máximo: máximo del sistema operativo
CONSIDERACIONES SOBRE LA SEGURIDAD
Para iniciar Management Studio, elija Programas>Microsoft SQL Server 2008>SQL
Server Management Studio en el menú de Inicio de Windows. Management Studio se
instala durante la instalación de Sql Server 2008. Al abrirse, le pide que se conecte a
una instancia de SQL Server. En cuanto se conecte, la instancia de SQL Server
aparece en el Explorador de objetos.
Si fuera necesario, se podría dar a conocer características especiales sobre la
conexión, para ello, hay que hacer clic sobre el botón Options, luego, aparecerá la
siguiente pantalla.
Universidad Nacional de Ingeniería
Pág. 10 danielramoscastaneda@hotmail.com SQL Administración
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 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 Connect. Seguidamente, veremos la pantalla
del Management Studio.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 11
Instalando el SQL Server 2008
Una vez que hayan decidido la Edición a utilizar del SQL Server 2008, procederemos a
instalar el software.
Universidad Nacional de Ingeniería
Pág. 12 danielramoscastaneda@hotmail.com SQL Administración
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 13
Aquí dan a conocer todos los servicios que van a utilizar:
Universidad Nacional de Ingeniería
Pág. 14 danielramoscastaneda@hotmail.com SQL Administración
Si tuvieran que crear una nueva instancia, aquí deberán de dar el nombre de esta:
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 15
Universidad Nacional de Ingeniería
Pág. 16 danielramoscastaneda@hotmail.com SQL Administración
Tener en cuenta que la instalación se debe de hacer con el usuario que tenga
máximos privilegios, además de tener una contraseña.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 17
Universidad Nacional de Ingeniería
Pág. 18 danielramoscastaneda@hotmail.com SQL Administración
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 19
Universidad Nacional de Ingeniería
Pág. 20 danielramoscastaneda@hotmail.com SQL Administración
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 21
Universidad Nacional de Ingeniería
Pág. 22 danielramoscastaneda@hotmail.com SQL Administración
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 23
C
CA
AP
PI
IT
TU
UL
LO
O 2
2
 Administración de la Base de Datos y Archivos
 Planificación de la BD.
 Creación de la BD.
 Administración de la BD.
 Uso de Schemas y FileGroups.
Universidad Nacional de Ingeniería
Pág. 24 danielramoscastaneda@hotmail.com SQL Administración
C R E A C I Ó N D E L A B D
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 Databases, luego clic
derecho.
Del menú contextual, seleccionar la
alternativa New Database, 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 Add,
luego aparecerá la siguiente pantalla.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 25
Desde aquí podremos crear los nuevos grupos de archivo, con los cuales trabajará
nuestra base de datos.
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 miproyecto;
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 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,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = Ventitas _log,
FILENAME = '''+ @data_path + ' Ventitaslog.ldf'',
SIZE = 5MB,
MAXSIZE = 25MB,
Universidad Nacional de Ingeniería
Pág. 26 danielramoscastaneda@hotmail.com SQL Administración
FILEGROWTH = 5MB )' );
GO
Creando una base de datos con múltiples archivos, los archivos con extensiones mdf
contienen los archivos primarios, los ndf contienen los archivos secundarios y los ldf
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
datos master para definir una base de datos cuando utilice instrucciones Transact-
SQL.
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. Las
opciones o configuraciones de la base de datos model se copian en la nueva base de
datos.
Importante, se recomienda hacer una copia de seguridad de la base de datos master
cada vez que cree, modifique o elimine una base de datos.
Al crear una base de datos se pueden establecer los siguientes parámetros:
PRIMARY
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 27
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 mdf. Si no se especifica la palabra clave PRIMARY, el primer 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 parámetro especifica el tamaño máximo hasta el que puede crecer el archivo.
Puede especificar el tamaño en megabytes (valor predeterminado) o en kilobytes. Si
no se especifica el tamaño, el archivo crece 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 incluye las reglas que gobiernan el uso de caracteres de un lenguaje o un
alfabeto.
Universidad Nacional de Ingeniería
Pág. 28 danielramoscastaneda@hotmail.com SQL Administración
Registro de Transacciones
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 modificaciones al registro en disco
cuando se ejecutan, antes de que se escriban en la base de datos.
El proceso de registro es el siguiente:
La aplicación envía una modificación de datos.
Cuando la modificación se ejecuta, las páginas de datos afectadas 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 de modificació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 repetitiva, el proceso de punto de comprobación escribe en disco todas las
transacciones completadas en la base de datos.
Si se produce un error del sistema, el proceso automático de recuperación utiliza el
registro de transacciones para aplicar todas las transacciones confirmadas y deshacer
las transacciones incompletas.
Los marcadores de transacción del registro se utilizan durante la recuperació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
Buffer Cache
Páginas de datos se encuentran
en, o se leen, en el buffer de
caché
y son modificados
2
La modificación se registra en
diario de las transacciones en
el disco
3
Checkpoint escribe
cometido de las
transacciones en la
base de datos
4
Modificaciones de datos es
enviada por la aplicación
1
Disk
Disk
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 29
un marcador COMMIT TRANSACTION asociado. Las páginas de datos se escriben en
disco cuando existe un punto de comprobación.
Administración de la 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 medio de la instrucción ALTER
DATABASE.
Puede configurar varias opciones de base de datos, pero sólo se puede hacer en una
sola base de datos al mismo tiempo. Para que las opciones afecten a todas las bases
de datos nuevas, cambie la base de datos model.
La tabla siguiente enumera algunas de las opciones de uso más frecuente.
Propiedad Descripción Valor Retornado
Opciones
automáticas
AUTO_CREATE_STATISTICS Crea automáticamente las
estadísticas que faltan que son
necesarias para la optimización
de consultas. El valor
predeterminado es ON.
AUTO_UPDATE_STATISTICS Actualiza automáticamente las
estadísticas desfasadas
necesarias para la optimización
de consultas. El valor
predeterminado es ON.
Opciones de
cursor
CURSOR_CLOSE_ON_COMMIT Cierra automáticamente los
cursores abiertos cuando se
confirma una transacción. El valor
predeterminado es OFF y los
cursores permanecen abiertos.
CURSOR_DEFAULT LOCAL |
GLOBAL
CURSOR_DEFAULT_LOCAL
limita el ámbito del cursor. Es
local al lote, procedimiento
almacenado o desencadenador
en el que se creó el cursor.
CURSOR_DEFAULT_GLOBAL
es el valor predeterminado; el
ámbito del cursor es global
respecto a la conexión.
Opciones de
recuperación
RECOVERY FULL |
BULK_LOGGED | SIMPLE
FULL proporciona recuperabilidad
completa ante errores del medio;
es el valor predeterminado.
BULK_LOGGED utiliza menos
espacio de registro porque el
registro es mínimo, pero tiene un
riesgo mayor de exposición.
SIMPLE recupera la base de
datos sólo hasta la última copia
de seguridad completa de la base
de datos o hasta la última copia
de seguridad diferencial.
TORN_PAGE_DETECTION Permite a SQL Server detectar
Universidad Nacional de Ingeniería
Pág. 30 danielramoscastaneda@hotmail.com SQL Administración
Propiedad Descripción Valor Retornado
operaciones de E/S incompletas
causadas por cortes de energía u
otros apagones del sistema. El
valor predeterminado es ON.
Opciones de SQL ANSI_NULL_DEFAULT Permite al usuario controlar la
capacidad de asignación
predeterminada de valores NULL
de la base de datos.
ANSI_NULLS Si está activada, todas las
comparaciones con un valor nulo
se evalúan como NULL
(desconocido). Si está
desactivada, todas las
comparaciones de valores no
Unicode con un valor nulo se
evalúan como verdaderas (TRUE)
si ambos valores son NULL. De
manera predeterminada, la opción
de base de datos ANSI_NULLS
es OFF.
Opciones de
estado
READ_ONLY | READ_WRITE Define la base de datos como de
sólo lectura (se utiliza para
establecer la seguridad en las
bases de datos de ayuda a la
toma de decisiones) o devuelve la
base de datos a operaciones de
lectura y escritura.
SINGLE_USER |
RESTRICTED_USER |
MULTI_USER
SINGLE_USER permite que los
usuarios se conecten a la base de
datos de uno en uno. Todas las
demás conexiones se
interrumpen.
RESTRICTED_USER permite que
sólo los miembros de la función
fija de base de datos db_owner y
de las funciones fijas de servidor
dbcreator y sysadmin se conecten
a la base de datos. MULTI_USER
permite que todos los usuarios
con los permisos adecuados se
conecten a la base de datos.
MULTI_USER es la opción
predeterminada.
Recuperación de información de la base de datos
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.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 31
La siguiente tabla enumera algunas de las propiedades de la base de datos.
Propiedad Descripción Valor retornado
Collation nombre por defecto para
la base de datos.
Collation name
NULL = Database is not
started.
Base data type:
nvarchar(128)
ComparisonStyle The Windows comparison
style of the collation.
ComparisonStyle is a
bitmap that is calculated
by using the following
values.
Style Value
Ignore
case
1
Ignore
accent
2
Ignore
Kana
65536
Ignore
width
131072
For example, the default of
196609 is the result of
combining the Ignore
case, Ignore Kana, and
Ignore width options.
Returns the comparison
style.
Returns 0 for all binary
collations.
Base data type: int
IsAnsiNullDefault Base de datos sigue
normas ISO para permitir
valores nulos.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsAnsiNullsEnabled Todas las comparaciones
a nulo para evaluar
desconocidos.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsAnsiPaddingEnabled Cadenas son rellenadas
con la misma longitud
antes de comparación o
inserción.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsAnsiWarningsEnabled Mensajes de error o de
advertencia se emiten
cuando un error estándar
se produce.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsArithmeticAbortEnabled Las consultas se terminan
cuando un error por
desbordamiento o división
por cero se produce
durante la ejecución de las
consultas.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsAutoClose Base de Datos se cierra
limpiando y liberando
recursos a partir de la
1 = TRUE
0 = FALSE
NULL = Input not valid
Universidad Nacional de Ingeniería
Pág. 32 danielramoscastaneda@hotmail.com SQL Administración
Propiedad Descripción Valor retornado
última salida de usuario Base data type: int
IsAutoCreateStatistics Falta de estadísticas que
se requieren de una
consulta para la
optimización automática
se construyó durante la
consulta de optimización.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsAutoShrink Archivos de Base de datos
son candidatos para
periódos automáticos de
disminución.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsAutoUpdateStatistics Estadísticas existentes
son actualizadas
automáticamente, por las
estadísticas de fuera de
fecha, porque los datos en
las tablas han cambiado.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsCloseCursorsOnCommitEnabled Cursores que están
abiertas cuando una
transacción se ha
comprometido están
cerradas
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsFulltextEnabled Base de Datos con full-
text permitido.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsInStandBy Base de Datos esta online
como read-only, con
restauración del log
permitido.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsLocalCursorsDefault Declaración del Cursor por
defecto como LOCAL
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsMergePublished Las tablas de una Base de
Datos pueden ser
publicadas para una
replicación, si la
replicación está instalada.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsNullConcat Concatenación de
operaciones Null rinden
con NULL.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsNumericRoundAbortEnabled Los errores se generan
cuando la pérdida de
precisión se produce en
las expresiones
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsParameterizationForced PARAMETERIZATION de
la base de datos con la
opción SET es FORCED.
1 = TRUE
0 = FALSE
NULL = Input not valid
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 33
Propiedad Descripción Valor retornado
IsQuotedIdentifiersEnabled Doble comillas se puede
utilizar en identificadores.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsPublished Las tablas de la base de
datos pueden ser
publicados por la
instantánea o la
replicación transaccional,
si se instala la replicación.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsRecursiveTriggersEnabled Recursivo disparo de
factores desencadenantes
está activado
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsSubscribed Base de datos está
suscrito a una publicación
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsSyncWithBackup La base de datos es una
base de datos de
publicación o una base de
datos de distribución, y
puede ser restaurada sin
interrumpir la replicación
transaccional.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
IsTornPageDetectionEnabled El SQL Server Database
Engine Engine detecta
operaciones incompletas
de E/S causados por fallos
de energía o cortes de
otro sistema.
1 = TRUE
0 = FALSE
NULL = Input not valid
Base data type: int
LCID El identificador de
Windows local (LCID) de
la colación.
LCID value (in decimal
format).
Base data type: int
For a list of LCID values
(in hexadecimal format),
see Collation Settings in
Setup.
Recovery Modelo de recuperación
para la base de datos
FULL = Full recovery
model
BULK_LOGGED = Bulk
logged model
SIMPLE = Simple
recovery model
Base data type:
nvarchar(128)
SQLSortOrder SQL Server sort order ID
supported in earlier
versions of SQL Server
SQL Server
ordenanimiento, apoya
ordenamiento por ID en
las versiones anteriores
de SQL Server
0 = Database is using
Windows collation
>0 = SQL Server sort
order ID
NULL = Input not valid or
database is not started
Base data type: tinyint
Status Estado de la Base de ONLINE = Database is
Universidad Nacional de Ingeniería
Pág. 34 danielramoscastaneda@hotmail.com SQL Administración
Propiedad Descripción Valor retornado
Datos. available for query.
OFFLINE = Database
was explicitly taken
offline.
RESTORING = Database
is being restored.
RECOVERING =
Database is recovering
and not yet ready for
queries.
SUSPECT = Database
did not recover.
EMERGENCY =
Database is in an
emergency, read-only
state. Access is restricted
to sysadmin members
Base data type:
nvarchar(128)
Updateability Indica si los datos pueden
ser modificados
READ_ONLY = Data can
be read but not modified.
READ_WRITE = Data
can be read and modified.
Base data type:
nvarchar(128)
UserAccess Indica que los usuarios
puedan acceder a la base
de datos.
SINGLE_USER = Only
one db_owner, dbcreator,
or sysadmin user at a
time
RESTRICTED_USER =
Only members of
db_owner, dbcreator, and
sysadmin roles
MULTI_USER = All users
Base data type:
nvarchar(128)
Version Número de versión interna
del código SQL Server
con el que la base de
datos se ha creado.
Identificado sólo con fines
informativos. No
soportado. La
compatibilidad en el futuro
no está garantizada.
Version number =
Database is open.
NULL = Database is not
started.
Base data type: int
La siguiente tabla enumera los procedimientos almacenados del sistema de uso
común que presentan información acerca de las bases de datos y sus parámetros.
Procedimiento almacenado de
sistema
Descripción
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
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 35
Procedimiento almacenado de
sistema
Descripción
de la base de datos.
sp_helpdb baseDeDatos Informa sólo acerca de la base de datos
especificada. 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] Resume el espacio de almacenamiento que
utiliza una base de datos o un objeto de base
de datos.
Componentes físicos: archivos y grupos de archivos de bases de datos (FileGroup).
Un grupo de archivos es un conjunto lógico de archivos de datos que permite a los
administradores 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.
Tipos de grupos de archivos
SQL Server 2008 tiene un grupo de archivos principal y también puede tener grupos
de archivos definidos por el usuario.
Universidad Nacional de Ingeniería
Pág. 36 danielramoscastaneda@hotmail.com SQL Administración
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 agrupados
con fines de asignación y administrativos. Estos otros archivos de datos se conocen
como archivos secundarios de datos y suelen utilizar la extensión .ndf.
SITUACIÓ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 para separar los 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 colocar los archivos OrdHist1.ndf y OrdHist2.ndf en discos diferentes
si ambos se consultaran con mucha frecuencia.
No puede poner archivos de registro de transacciones en grupos de archivos. El
espacio del registro de transacciones se administra por separado del espacio de datos.
Los registros de transacciones suelen utilizar la extensión .ldf.
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.
CUÁNDO CREAR GRUPOS DE ARCHIVOS
Puede crear varios archivos de datos en discos diferentes y crear un grupo de archivos
definido por el usuario para contener los archivos. Las dos razones principales para
utilizar grupos de archivos son mejorar el rendimiento y controlar la colocación física
de datos.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 37
Uso de varios archivos en un único grupo de archivos para mejorar el rendimiento
Si bien Matriz redundante de discos independientes (RAID) es la manera preferida de
mejorar el rendimiento de una base de datos, puede asignar varios archivos de discos
distintos a un único grupo de archivos para mejorar el rendimiento implementando una
forma de seccionamiento de datos dentro de SQL Server. Puesto que SQL Server
utiliza una estrategia de relleno proporcional al escribir datos en un grupo de archivos,
los datos se reparten entre los archivos y, por tanto, en las particiones físicas del
disco.
Este método permite tener un control más fino sobre el seccionamiento de datos del
que se puede lograr al crear un conjunto de volúmenes seccionados en el sistema
operativo Windows, o utilizando una controladora de matriz RAID.
Nota: En la mayoría de los casos, el uso de las funciones de seccionamiento de RAID
Proporciona la misma ganancia de rendimiento que podría lograr utilizando grupos
de archivos definidos por el usuario, sin la carga administrativa agregada que supone
definir y administrar los grupos de archivos.
USO DE VARIOS GRUPOS DE ARCHIVOS PARA CONTROLAR LA COLOCACIÓN
FÍSICA DE LOS DATOS
Para utilizar grupos de archivos con el fin de simplificar el mantenimiento o lograr
objetivos de diseño, puede:
Almacenar los datos de lectura y escritura separados de los datos de sólo lectura para
mantener separados los diferentes tipos de actividad de E/S de disco.
Almacenar los índices en discos diferentes que las tablas, lo que puede conducir a un
mayor rendimiento.
Hacer copia de seguridad o restaurar archivos individuales o grupos de archivos en
lugar de hacer copia de seguridad o restaurar una base de datos entera. Puede ser
Universidad Nacional de Ingeniería
Pág. 38 danielramoscastaneda@hotmail.com SQL Administración
necesario hacer copia de seguridad de archivos o de grupos de archivos para las
bases de datos grandes con el fin de tener una estrategia eficaz de copia de seguridad
y restauración.
Agrupar en los mismos grupos de archivos las tablas y los índices que tienen unos
requisitos de mantenimiento similares. Quizás desee realizar tareas de mantenimiento
en algunos objetos con más frecuencia que en otros. Por ejemplo, si crea dos grupos
de archivos y les asigna tablas, puede ejecutar las tareas diarias de mantenimiento en
las tablas de un grupo diario y las tareas de mantenimiento semanales en las tablas de
un grupo semanal. Esto limita la contención de disco entre los dos grupos de archivos.
Separar las tablas de usuario y otros objetos de base de datos de las tablas del
sistema en el grupo de archivos principal. También debe cambiar el grupo de archivos
predeterminado para evitar que el crecimiento inesperado de las tablas restrinja las
tablas del sistema del grupo de archivos principal.
Almacenar las particiones de una tabla con particiones en varios grupos de archivos.
Ésta es una buena forma de separar físicamente los datos que tienen necesidades de
acceso diferentes dentro de una única tabla, y también puede proporcionar ventajas de
facilidad de administración y rendimiento.
Creación de esquemas
Los desarrolladores que hayan trabajado con Microsoft .NET Framework o con XML
estarán familiarizados con el concepto de espacios 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 2008 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 procedimientos 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 2008.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 39
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 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 de la tabla incluye el nombre del servidor, la base de datos y el esquema.
Por ejemplo, el nombre completo de la tabla ErrorLog del esquema dbo 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 2008, los
esquemas están separados de la propiedad de los objetos, lo que proporciona las
ventajas siguientes:
Mayor flexibilidad a la hora de organizar los objetos de base de datos en espacios de
nombres, ya que la agrupación de objetos en esquemas no depende de la propiedad
de los objetos.
Administración de permisos más sencilla, ya que se puede otorgar permisos en el
ámbito del esquema y en los objetos individuales.
Facilidad de administración mejorada, porque al quitar a un usuario no es necesario
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.
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 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
Universidad Nacional de Ingeniería
Pág. 40 danielramoscastaneda@hotmail.com SQL Administración
GO
CREATE SCHEMA Sales
GO
Cómo funciona la 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 para controlar cómo se resuelven los nombres de objetos incompletos.
CÓMO FUNCIONA LA RESOLUCIÓN DE NOMBRES
SQL Server 2008 utiliza el proceso siguiente para resolver un nombre de objeto
incompleto:
Si el usuario tiene un esquema predeterminado, SQL Server intenta encontrar el objeto
en ese esquema predeterminado.
Si el objeto no se encuentra en el esquema predeterminado del usuario, si el usuario
no tiene ningún esquema predeterminado, SQL Server intenta encontrar el objeto en el
esquema dbo.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 41
Por ejemplo, un usuario que tiene el esquema predeterminado Person ejecuta la
siguiente instrucción Transact-SQL:
SELECT * FROM Contact
SQL Server 2008 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.
Asignación de un esquema predeterminado
Puede asignar un esquema predeterminado a un usuario utilizando el cuadro de
diálogo Propiedades de Usuario de la base de datos o especificando 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 para el usuario Angello:
ALTER USER Angello WITH DEFAULT_SCHEMA = Sales
Universidad Nacional de Ingeniería
Pág. 42 danielramoscastaneda@hotmail.com SQL Administración
C
CA
AP
PI
IT
TU
UL
LO
O 3
3
 Planificación de una Estrategia de Backups
 Realizando el Backup de la BD
 Restaurando una BD
 Recuperación de datos desde Snapshots
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 43
P L A N I F I C A C I Ó N D E U N A E S T R A T E G I A D E
B A C K U P S
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 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 de un desastre.
Tipos de Backup Descripción
Full Todos los archivos de la Base de Datos, datos (MDF y NDF) y de
transacciones (LDF).
Transaction Log Cualquier cambio en la Base de Datos, es guardado en el archivo
de transacciones.
Tail-Log La porción activa del archivo de transacciones.
Differential Las partes de la Base de Datos que han cambiado desde el último
backup completo a la Base de Datos.
File / Filegroup Archivos específicos o grupos de archivos.
Partial El grupo de archivos primario, cada grupo de archivos de
lectura/escritura, y cualquier grupo de archivos especificado como
lectura/escritura.
Copy-only La Base de Datos o el archivo de Transacciones (sin afectar la
secuencia de backup).
Realizando el Backup de la BD
Uso de la Instrucción BACKUP DATABASE
Realiza una copia de seguridad completa de la base de datos o de uno o varios
archivos o grupos de archivos (BACKUP DATABASE). 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 transacciones (BACKUP
LOG).
Sintaxis
--creando un backup
BACKUP DATABASE { database_name | @database_name_var }
TO <backup_device> [ ,...n ]
Universidad Nacional de Ingeniería
Pág. 44 danielramoscastaneda@hotmail.com SQL Administración
[ <MIRROR TO clause> ] [ next-mirror-to ]
[ WITH { DIFFERENTIAL | <general_WITH_options> [ ,...n ] } ]
[;]
--Backup para Files o Filegroups
BACKUP DATABASE { database_name | @database_name_var }
<file_or_filegroup> [ ,...n ]
TO <backup_device> [ ,...n ]
[ <MIRROR TO clause> ] [ next-mirror-to ]
[ WITH { DIFFERENTIAL | <general_WITH_options> [ ,...n ] } ]
[;]
--Creando un Backup Parcial
BACKUP DATABASE { database_name | @database_name_var }
READ_WRITE_FILEGROUPS [ , <read_only_filegroup> [ ,...n ] ]
TO <backup_device> [ ,...n ]
[ <MIRROR TO clause> ] [ next-mirror-to ]
[ WITH { DIFFERENTIAL | <general_WITH_options> [ ,...n ] } ]
[;]
Argumentos
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.
Se realiza la copia de seguridad del registro desde la última copia 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 de seguridad
completa.
{ database_name | @database_name_var }
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.
<file_or_filegroup> [ ,...n ]
Se utiliza sólo con BACKUP DATABASE, especifica 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 }
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_var }
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 45
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_name |
@logical_filegroup_name_var } [ ,...n ] ]
Especifica una copia de seguridad parcial. Una copia de 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.
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_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
"<file_or_filegroup>", 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 <backup_device> [ ,...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).
<backup_device>
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 variable (@logical_device_name_var),
el nombre del dispositivo de copia de seguridad se puede especificar como una
constante de cadena (@logical_device_name_var = nombre del dispositivo de copia
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_var }
Especifica un archivo de disco o un dispositivo de cinta.
Universidad Nacional de Ingeniería
Pág. 46 danielramoscastaneda@hotmail.com SQL Administración
No es necesario que exista un dispositivo de disco antes de que se especifique 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 <backup_device> [ ,...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 dispositivos 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 2008 Enterprise Edition y versiones
posteriores.
<backup_device>
Vea "<backup_device>", en un apartado anterior de esta 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.
Opciones de WITH
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 completa. Utilice esta opción para que no tenga que aplicar todas las copias
de 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 = { password | @password_variable }
Establece la contraseña del conjunto de copia de seguridad. PASSWORD es una
cadena de caracteres.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 47
Si se define una contraseña para el conjunto de copia de seguridad, debe suministrarla
para realizar operaciones de restauración de SQL Server de ese conjunto de copia de
seguridad. No obstante, la contraseña del conjunto de copia de seguridad no impide
que se sobrescriba el archivo de copia de seguridad. Para evitar que se sobrescriba el
archivo de copia de seguridad, utilice una contraseña para el conjunto de medios (vea
la opción MEDIAPASSWORD más adelante en esta tabla). (Para obtener más
información sobre cómo utilizar las contraseñas, vea "Permisos", más adelante en este
tema.)
Utilizando el Management del SQL Server
Primero nos ubicamos en el explorador de objetos, y luego hacemos clic derecho
sobre la base de datos, seguidamente, haremos clic sobre la opción de propiedades
de la base de datos.
Luego, en la opción “Recovery Model”, seleccionaremos la alternativa “Full”, con la
cual, podremos realizar todos los tipos de Backup de nuestra Base de Datos.
Universidad Nacional de Ingeniería
Pág. 48 danielramoscastaneda@hotmail.com SQL Administración
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 “Back Up..” (ver figura).
Luego aparecerá la siguiente pantalla, en la cual seleccionaremos el tipo de Backup a
realizar.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 49
Una vez que hayamos realizado las configuraciones del caso, procederemos a hacer
clic sobre el botón “OK”, luego de algunos instantes, aparecerá la siguiente pantalla.
Restaurando una BD
Para realizar la restauración de una Base de Datos, podemos hacer uso de la
instrucción RESTORE, o de los 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 completa a partir de una copia de seguridad
completa de la base de datos (restauración completa).
 Restaurar parte de una base de datos (restauración parcial).
 Restaurar archivos o grupos de archivos en una base de datos (restauración de
archivos).
 Restaurar páginas específicas en una base de datos (restauración de páginas).
 Restaurar un registro de transacciones en una base de datos (restauración del
registro de transacciones).
 Revertir una base de datos al punto temporal 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 <backup_device> [ ,...n ] ]
[ WITH
{
[ RECOVERY | NORECOVERY | STANDBY =
{standby_file_name | @standby_file_name_var }
]
| , <general_WITH_options> [ ,...n ]
| , <replication_WITH_option>
| , <change_data_capture_WITH_option>
| , <service_broker_WITH options>
| , <point_in_time_WITH_options—RESTORE_DATABASE>
} [ ,...n ]
]
[;]
--To perform the first step of the initial restore sequence
-- of a piecemeal restore:
RESTORE DATABASE { database_name | @database_name_var }
<files_or_filegroups> [ ,...n ]
[ FROM <backup_device> [ ,...n ] ]
WITH
Universidad Nacional de Ingeniería
Pág. 50 danielramoscastaneda@hotmail.com SQL Administración
PARTIAL, NORECOVERY
[ , <general_WITH_options> [ ,...n ]
| , <point_in_time_WITH_options—RESTORE_DATABASE>
] [ ,...n ]
[;]
--To Restore Specific Files or Filegroups:
RESTORE DATABASE { database_name | @database_name_var }
<file_or_filegroup> [ ,...n ]
[ FROM <backup_device> [ ,...n ] ]
WITH
{
[ RECOVERY | NORECOVERY ]
[ , <general_WITH_options> [ ,...n ] ]
} [ ,...n ]
[;]
--To Restore Specific Pages:
RESTORE DATABASE { database_name | @database_name_var }
PAGE = 'file:page [ ,...n ]'
[ , <file_or_filegroups> ] [ ,...n ]
[ FROM <backup_device> [ ,...n ] ]
WITH
NORECOVERY
[ , <general_WITH_options> [ ,...n ] ]
[;]
--To Restore a Transaction Log:
RESTORE LOG { database_name | @database_name_var }
[ <file_or_filegroup_or_pages> [ ,...n ] ]
[ FROM <backup_device> [ ,...n ] ]
[ WITH
{
[ RECOVERY | NORECOVERY | STANDBY =
{standby_file_name | @standby_file_name_var }
]
| , <general_WITH_options> [ ,...n ]
| , <replication_WITH_option>
| , <point_in_time_WITH_options—RESTORE_LOG>
} [ ,...n ]
]
[;]
RESTORE DATABASE { database_name | @database_name_var }
FROM DATABASE_SNAPSHOT = database_snapshot_name
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.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 51
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 no
autorizadas de los conjuntos de copia de seguridad en medios que utilizan
herramientas de SQL Server. No obstante, los medios protegidos con contraseña se
pueden sobrescribir mediante la opción FORMAT de la instrucción BACKUP.
Ejemplos sobre el uso del RESTORE
A. Restaurar una base de datos completa
En el siguiente ejemplo se restaura una copia de seguridad completa de la base de
datos desde un dispositivo lógico de copia de seguridad de AdventureWorksBackups
RESTORE DATABASE AdventureWorks
FROM AdventureWorksBackups
B. Restaurar copias de seguridad de bases de datos completas y diferenciales
En el siguiente ejemplo se restaura una copia de seguridad completa después de una
copia de seguridad diferencial del dispositivo de copia de seguridad
Z:SQLServerBackupsAdventureWorks.bak, que contiene las dos copias de
seguridad. 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 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:SQLServerBackupsAdventureWorks.bak'
WITH FILE = 6
NORECOVERY;
RESTORE DATABASE AdventureWorks
FROM DISK = 'Z:SQLServerBackupsAdventureWorks.bak'
WITH FILE = 9
RECOVERY;
C. Restaurar una base de datos con la sintaxis de RESTART
En el ejemplo siguiente se usa la opción RESTART para reiniciar una operación
RESTORE interrumpida por un error de alimentación del servidor.
-- This database RESTORE halted prematurely due to power failure.
RESTORE DATABASE AdventureWorks
FROM AdventureWorksBackups
-- Here is the RESTORE RESTART operation.
RESTORE DATABASE AdventureWorks
FROM AdventureWorksBackups WITH RESTART
D. Restaurar una base de datos y mover archivos
En el ejemplo siguiente se restaura una base de datos completa y el registro de
transacciones, y se mueve la base de datos restaurada al directorio C:Program
FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLData.
RESTORE DATABASE AdventureWorks
FROM AdventureWorksBackups
WITH NORECOVERY,
MOVE 'AdventureWorks_Data' TO
Universidad Nacional de Ingeniería
Pág. 52 danielramoscastaneda@hotmail.com SQL Administración
'C:Program FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLDataNewAdvWorks.mdf',
MOVE 'AdventureWorks_Log'
TO 'C:Program FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLDataNewAdvWorks.ldf'
RESTORE LOG AdventureWorks
FROM AdventureWorksBackups
WITH RECOVERY
E. Copiar una base de datos con BACKUP y RESTORE
En el ejemplo siguiente se usan las instrucciones BACKUP y RESTORE para realizar
una copia de la base de datos AdventureWorks. La instrucción MOVE hace que se
restauren los datos y el archivo de registro en las ubicaciones especificadas. La
instrucción RESTORE FILELISTONLY se usa para determinar el número y los
nombres de los archivos de la base de datos que se están restaurando. La nueva
copia de la base de datos se llama TestDB. Para obtener más información, vea
RESTORE FILELISTONLY (Transact-SQL).
BACKUP DATABASE AdventureWorks
TO AdventureWorksBackups ;
RESTORE FILELISTONLY
FROM AdventureWorksBackups ;
RESTORE DATABASE TestDB
FROM AdventureWorksBackups
WITH MOVE 'AdventureWorks_Data' TO 'C:MySQLServertestdb.mdf',
MOVE 'AdventureWorks_Log' TO 'C:MySQLServertestdb.ldf';
GO
F. Restaurar con la sintaxis de FILE y FILEGROUP
En el siguiente ejemplo se restaura una base de datos llamada MyDatabase que tiene
dos archivos, un grupo de archivos secundario y un registro de transacciones. La base
de datos usa el modelo de recuperación completa.
La copia de seguridad de la base de datos es el noveno conjunto de copia de
seguridad del conjunto de medios en un dispositivo lógico de copia de seguridad
llamado MyDatabaseBackups. A continuación se restauran mediante WITH
NORECOVERY tres copias de seguridad de registros que están en los tres conjuntos
de copia de seguridad siguientes (10, 11 y 12) en el dispositivo MyDatabaseBackups.
Tras restaurar la última copia de seguridad de registros se restaura la base de datos.
Tenga en cuenta que en RESTORE DATABASE hay dos tipos de opciones FILE. Las
opciones FILE que preceden al nombre del dispositivo de copia de seguridad
especifican los nombres de archivos lógicos de los archivos de base de datos que se
van a restaurar desde el conjunto de copia de seguridad; por ejemplo, FILE =
'MyDatabase_data_1'. Este conjunto de copia de seguridad no es la primera copia de
seguridad de la base de datos en el conjunto de medios; por ello, su posición en el
conjunto de medios se indica mediante la opción FILE de la cláusula WITH, FILE=9.
RESTORE DATABASE MyDatabase
FILE = 'MyDatabase_data_1',
FILE = 'MyDatabase_data_2',
FILEGROUP = 'new_customers'
FROM MyDatabaseBackups
WITH
FILE = 9,
NORECOVERY;
GO
-- Restore the log backups.
RESTORE LOG MyDatabase
FROM MyDatabaseBackups
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 53
WITH FILE = 10,
NORECOVERY;
GO
RESTORE LOG MyDatabase
FROM MyDatabaseBackups
WITH FILE = 11,
NORECOVERY;
GO
RESTORE LOG MyDatabase
FROM MyDatabaseBackups
WITH FILE = 12,
NORECOVERY;
GO
--Recover the database:
RESTORE DATABASE MyDatabase WITH RECOVERY;
GO
Recuperando la BD desde el management
Especificamos el origen del archivo de Backup, seleccionamos “From Device”
Universidad Nacional de Ingeniería
Pág. 54 danielramoscastaneda@hotmail.com SQL Administración
Hacemos clic sobre el botón “Add” para especificar la ubicación del archivo de Backup.
Seleccionamos el archivo.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 55
Confirmamos la ubicación del archivo a recuperar.
Indicamos el nombre de la Base de Datos a recuperar.
Universidad Nacional de Ingeniería
Pág. 56 danielramoscastaneda@hotmail.com SQL Administración
Verificamos la ubicación de los archivos de mdf, ndf y ldf.
Una vez completado, aparecerá el siguiente mensaje.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 57
C
CA
AP
PI
IT
TU
UL
LO
O 4
4
 Administración de la Seguridad
 Modos de autenticidad
 Creación de Usuarios
 Uso de Credenciales y Permisos
Universidad Nacional de Ingeniería
Pág. 58 danielramoscastaneda@hotmail.com SQL Administración
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ón primordial cuando se diseña y administra un entorno de
base de datos, aquí, daremos a conocer los componentes fundamentales 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é son las entidades de seguridad?
SQL Server 2008 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 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, que son 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).
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
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 59
se muestran en la tabla siguiente.
Nivel Entidades de seguridad
Windows Cuenta de usuario local de Windows
Cuenta de usuario de dominio de Windows
Grupo de Windows
SQL Server Inicio de sesión de SQL Server
Función de SQL Server
Base de datos Usuario de la base de datos
Función de la base de datos
Función de aplicación
Grupo de bases de datos (sólo para
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 de base de datos.
¿Qué son los protegibles?
Los objetos cuyo acceso está regulado por el sistema de autorización de SQL Server 2008 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.
Los protegibles se organizan en jerarquías anidadas 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 incluyen archivos y claves del Registro.
El ámbito de servidor Los protegibles que contiene el ámbito de servidor
incluyen:
■ Inicios de sesión
■ Extremos
■ Bases de datos
Universidad Nacional de Ingeniería
Pág. 60 danielramoscastaneda@hotmail.com SQL Administración
El ámbito de base de datos 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
■ Eventos DDL
■ Esquemas
El ámbito de esquema 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 inicios de sesión, lo que lo convierte en un protegible.
Permisos de SQL Server 2008
SQL Server 2008 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.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 61
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 de SQL Server tienen permisos asociados que pueden otorgarse a cada
entidad de seguridad.
Ejemplo de permiso
La única manera de que una entidad de seguridad pueda tener acceso a un recurso en un
sistema de SQL Server es recibir 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 los
permisos usando el Explorador de objetos en SQL Server Management Studio o mediante la
ejecución de instrucciones GRANT, REVOKE 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
Determinados permisos en SQL Server 2008 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
hereda automáticamente el permiso SELECT en todos los objetos del esquema.
■ 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 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 la entidad de seguridad, y…
■ El permiso no se ha denegado 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 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é son los modos de autenticación de SQL Server?
SQL Server 2008 puede configurarse para usar uno de los dos modos de autenticación
siguientes:
Universidad Nacional de Ingeniería
Pág. 62 danielramoscastaneda@hotmail.com SQL Administración
Modo de autenticación de Windows. 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, el
símbolo de acceso 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 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. Además, SQL Server mantiene inicios de sesión 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 a
Windows. El modo de autenticación de Windows y SQL
Server se conoce a veces como modo mixto.
Nota 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.
CUANDO USAR EL MODO DE AUTENTICACIÓN WINDOWS
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 la autenticación de SQL
Server, como por ejemplo:
Le permite agregar grupos de usuarios a SQL Server mediante la agregación de una cuenta de
inicio de sesión única.
Permite a los usuarios un rápido acceso a SQL Server sin tener que recordar otra cuenta de
inicio de sesión y contraseña.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 63
CUANDO USAR EL MODO DE AUTENTICACIÓN SQL
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ímbolo de acceso de usuario de
Windows, lo que hace más segura la autenticación de Windows.
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ón de cada uno de los 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ás vulnerable ante cualquier ataque.
Importante 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 funcionan las directivas de contraseñas
En Microsoft Windows Server™ 2003 y 2008, puede usar la Directiva de grupo para definir las
configuraciones de usuarios y equipos para grupos de usuarios y equipos. Puede usar la
Directiva de grupo para configurar muchas opciones, incluidas las directivas de cuentas. Las
directivas de contraseñas son útiles para garantizar que todas las contraseñas sean lo
suficientemente complejas y que se cambien periódicamente para maximizar la seguridad y
evitar el acceso no autorizado.
En SQL Server 2008, las directivas de cuentas locales o de dominio se pueden aplicar a inicios
de sesión de SQL, así como a los inicios de sesión de Windows, cuando SQL Server se instala
en equipos que usan Windows Server 2003 / 2008 o posterior.
Universidad Nacional de Ingeniería
Pág. 64 danielramoscastaneda@hotmail.com SQL Administración
Directivas de complejidad de contraseñas
Las directivas de complejidad de contraseñas están diseñadas para disuadir los ataques de
fuerza bruta por medio del aumento del número de contraseñas posibles. Cuando se aplica la
directiva de complejidad de contraseñas, las nuevas contraseñas deben cumplir los requisitos
de directiva establecidos por la directiva de contraseñas de Windows. Un ejemplo de este tipo
de directiva sería:
La contraseña no contiene todo o parte del nombre de cuenta del usuario. Una parte de un
nombre de cuenta se define como tres o más caracteres alfanuméricos consecutivos
delimitados en ambos extremos por un espacio en blanco (espacio, tabulación, retorno, etc.) o
por cualquiera de los caracteres siguientes: , . - _ #
La contraseña debe tener una longitud de siete caracteres como mínimo.
La contraseña contiene caracteres de tres de las cuatro categorías siguientes:
Abecedario inglés en mayúsculas (de la A a la Z)
Abecedario inglés en minúsculas (de la a a la z)
Dígitos en base decimal (del 0 al 9)
Caracteres no alfanuméricos (por ejemplo: !, $, #, o %)
Directiva de caducidad de contraseña
Las directivas de caducidad de contraseñas se usan para administrar el tiempo de vida de una
contraseña. Cuando se usa una directiva de caducidad de contraseñas, se recuerda a los
usuarios que cambien las contraseñas anteriores y las cuentas con contraseñas caducadas se
deshabilitan.
Cómo administrar inicios de sesión de SQL Server
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 Transact-SQL CREATE
LOGIN, ALTER LOGIN y DROP LOGIN.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 65
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.
CREANDO 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:
CREATE LOGIN [SERVERXVendedor]
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 2008 proporciona restricciones de directiva similares para inicios de
sesión de SQL cuando está instalado en Windows Server 2003/2008. 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 comportamiento mediante las
opciones de la instrucción CREATE LOGIN mostradas
en la tabla siguiente.
Opción Descripción
HASHEDloca Especifica que la contraseña ya se ha comprobado
aleatoriamente. Si no está especificada, la cadena se
comprobará aleatoriamente antes del almacenamiento.
MUST_CHANGE Solicita a un inicio de sesión que cambie su contraseña la
primera vez que se conecta. Si se especifica esta opción,
Universidad Nacional de Ingeniería
Pág. 66 danielramoscastaneda@hotmail.com SQL Administración
CHECK_EXPIRATION y CHECK_POLICY deben
establecerse en ON.
CHECK_EXPIRATION Cuando se encuentra en ON (el valor predeterminado), esta
opción especifica que la directiva de caducidad de
contraseñas de Windows Server 2003/2008 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.
CHECK_POLICY Cuando se encuentra en ON (el valor predeterminado), esta
directiva especifica que la directiva de complejidad de
contraseñas de Windows Server 2003/2008 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 definida 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/2008 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. 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.
MODIFICANDO INICIOS DE SESIÓN
Puede modificar un inicio de sesión viendo sus propiedades en el Explorador 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
Eliminando inicios de sesión
Puede eliminar un inicio de sesión haciendo clic sobre él con el botón secundario en el
Explorador de objetos y haciendo clic a continuación en Eliminar, o ejecutando la instrucción
DROP LOGIN como se muestra en el ejemplo siguiente:
DROP LOGIN dRamos
¿Qué son las funciones fijas de servidor?
Las funciones proporcionan un medio de agrupar usuarios en una sola unidad a la que se
pueden aplicar permisos.
Facultad de Ingeniería Industrial y de Sistemas
SQL Administración danielramoscastaneda@hotmail.com Pág. 67
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 de forma independiente a las
bases de datos de usuarios 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, 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.
Asignar una cuenta de inicio de sesión a una función fija de servidor
Puede usar las Propiedades de inicio de sesión de SQL Server en SQL Server Management
Studio o el procedimiento almacenado del sistema sp_addsrvrolemember para agregar una
cuenta de inicio de sesión como un miembro de una función fija de servidor. Sólo los miembros
de funciones fijas de servidor pueden ejecutar el procedimiento almacenado del sistema
sp_addsrvrolemember.
Al agregar una cuenta de inicio de sesión a una función de servidor, la cuenta consigue los
permisos asociados a la función de servidor.
Para asignar cuentas de inicio de sesión a funciones fijas de servidor, tenga en cuenta los
puntos siguientes:
No puede agregar, modificar o eliminar funciones fijas de servidor.
Cualquier miembro de una función fija de servidor puede agregar otras cuentas de inicio de
sesión a esa función.
El procedimiento almacenado del sistema sp_addsrvrolemember no puede ejecutarse dentro
de una transacción definida por el usuario.
También puede usar el procedimiento almacenado del sistema sp_dropsrvrolemember para
eliminar un miembro de una función fija de servidor
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion
Separata uni sql2008 administracion

Contenu connexe

Tendances

Administración de bases de datos con sql server 2008 (ejemplo)
Administración de bases de datos con sql server 2008 (ejemplo)Administración de bases de datos con sql server 2008 (ejemplo)
Administración de bases de datos con sql server 2008 (ejemplo)Ana Granados Navarro
 
Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...
Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...
Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...Yamil Lambert
 
Sql Server 2008 Administracion
Sql Server 2008 AdministracionSql Server 2008 Administracion
Sql Server 2008 AdministracionEduardo Castro
 
BD_EQ1_INVESTIGACION_APORTACION_SQLSERVER2008EXPRESS_TODOS
BD_EQ1_INVESTIGACION_APORTACION_SQLSERVER2008EXPRESS_TODOSBD_EQ1_INVESTIGACION_APORTACION_SQLSERVER2008EXPRESS_TODOS
BD_EQ1_INVESTIGACION_APORTACION_SQLSERVER2008EXPRESS_TODOSguestfd36060
 
Sq ly oracle.tarea2
Sq ly oracle.tarea2Sq ly oracle.tarea2
Sq ly oracle.tarea2hdez7eli
 
Componentes de sql server 2008
Componentes de sql server 2008Componentes de sql server 2008
Componentes de sql server 2008Jillian Motoharu
 
Libro introduccion SQL Server Express Edition 2012
Libro introduccion SQL Server Express Edition 2012Libro introduccion SQL Server Express Edition 2012
Libro introduccion SQL Server Express Edition 2012Andreiitah Puliido
 
INTRODUCCIÓN A SQL SERVER MANAGEMENT STUDIO 2008
INTRODUCCIÓN A SQL SERVER MANAGEMENT STUDIO 2008INTRODUCCIÓN A SQL SERVER MANAGEMENT STUDIO 2008
INTRODUCCIÓN A SQL SERVER MANAGEMENT STUDIO 2008Edwin Arias
 
Contrastación SQL 2005 y SQL 2008
Contrastación SQL 2005 y SQL 2008Contrastación SQL 2005 y SQL 2008
Contrastación SQL 2005 y SQL 2008Luis Vázquez
 
Infografía Access 2016
Infografía Access 2016Infografía Access 2016
Infografía Access 2016IngridRamos46
 
Unidad 3 actividad 2
Unidad 3 actividad 2Unidad 3 actividad 2
Unidad 3 actividad 2KARY
 
DAX SQL Server 2012 SQL Saturday
DAX SQL Server 2012 SQL SaturdayDAX SQL Server 2012 SQL Saturday
DAX SQL Server 2012 SQL SaturdayEduardo Castro
 

Tendances (19)

Administración de bases de datos con sql server 2008 (ejemplo)
Administración de bases de datos con sql server 2008 (ejemplo)Administración de bases de datos con sql server 2008 (ejemplo)
Administración de bases de datos con sql server 2008 (ejemplo)
 
Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...
Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...
Administración y Programación microsoft SQL Server 2008 por Yamil Lambert Sar...
 
Tarea 1 bd
Tarea 1 bdTarea 1 bd
Tarea 1 bd
 
Sql
SqlSql
Sql
 
SQL Server
SQL ServerSQL Server
SQL Server
 
Sql Server 2008 Administracion
Sql Server 2008 AdministracionSql Server 2008 Administracion
Sql Server 2008 Administracion
 
BD_EQ1_INVESTIGACION_APORTACION_SQLSERVER2008EXPRESS_TODOS
BD_EQ1_INVESTIGACION_APORTACION_SQLSERVER2008EXPRESS_TODOSBD_EQ1_INVESTIGACION_APORTACION_SQLSERVER2008EXPRESS_TODOS
BD_EQ1_INVESTIGACION_APORTACION_SQLSERVER2008EXPRESS_TODOS
 
Sq ly oracle.tarea2
Sq ly oracle.tarea2Sq ly oracle.tarea2
Sq ly oracle.tarea2
 
Servidores
ServidoresServidores
Servidores
 
Componentes de sql server 2008
Componentes de sql server 2008Componentes de sql server 2008
Componentes de sql server 2008
 
Libro introduccion SQL Server Express Edition 2012
Libro introduccion SQL Server Express Edition 2012Libro introduccion SQL Server Express Edition 2012
Libro introduccion SQL Server Express Edition 2012
 
INTRODUCCIÓN A SQL SERVER MANAGEMENT STUDIO 2008
INTRODUCCIÓN A SQL SERVER MANAGEMENT STUDIO 2008INTRODUCCIÓN A SQL SERVER MANAGEMENT STUDIO 2008
INTRODUCCIÓN A SQL SERVER MANAGEMENT STUDIO 2008
 
Talleres Bd
Talleres BdTalleres Bd
Talleres Bd
 
Access 2007
Access 2007Access 2007
Access 2007
 
Contrastación SQL 2005 y SQL 2008
Contrastación SQL 2005 y SQL 2008Contrastación SQL 2005 y SQL 2008
Contrastación SQL 2005 y SQL 2008
 
Sql
SqlSql
Sql
 
Infografía Access 2016
Infografía Access 2016Infografía Access 2016
Infografía Access 2016
 
Unidad 3 actividad 2
Unidad 3 actividad 2Unidad 3 actividad 2
Unidad 3 actividad 2
 
DAX SQL Server 2012 SQL Saturday
DAX SQL Server 2012 SQL SaturdayDAX SQL Server 2012 SQL Saturday
DAX SQL Server 2012 SQL Saturday
 

En vedette

Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?melidevelopers
 
C# conexión sql server2012-visualstudio2012-mantenimientos
C#   conexión sql server2012-visualstudio2012-mantenimientosC#   conexión sql server2012-visualstudio2012-mantenimientos
C# conexión sql server2012-visualstudio2012-mantenimientosJomar Burgos Palacios
 
Curso programación páginas web con ASP.NET
Curso programación páginas web con ASP.NETCurso programación páginas web con ASP.NET
Curso programación páginas web con ASP.NETEuroinnova Formación
 
Desarrollo Web con ASP.NET MVC
Desarrollo Web con ASP.NET MVCDesarrollo Web con ASP.NET MVC
Desarrollo Web con ASP.NET MVCAngel Nuñez
 
Trabajar con bases de datos desde ASP.NET
Trabajar con bases de datos desde ASP.NETTrabajar con bases de datos desde ASP.NET
Trabajar con bases de datos desde ASP.NETJavier Roig
 
Desarrollo de Aplicaciones Web con ASP.NET MVC5
Desarrollo de Aplicaciones Web con ASP.NET MVC5Desarrollo de Aplicaciones Web con ASP.NET MVC5
Desarrollo de Aplicaciones Web con ASP.NET MVC5Oscar Gensollen
 
Microsoft Asp. Net [Asp.Net - Parte 2]
Microsoft Asp. Net [Asp.Net - Parte 2]Microsoft Asp. Net [Asp.Net - Parte 2]
Microsoft Asp. Net [Asp.Net - Parte 2]Antonio Torres
 
Programacion de aplicaciones Web con ASP.NET
Programacion de aplicaciones Web con ASP.NETProgramacion de aplicaciones Web con ASP.NET
Programacion de aplicaciones Web con ASP.NETJavier Roig
 
SISTEMA DE FACTURACION (Ejemplo desarrollado)
SISTEMA DE FACTURACION (Ejemplo desarrollado)SISTEMA DE FACTURACION (Ejemplo desarrollado)
SISTEMA DE FACTURACION (Ejemplo desarrollado)Darwin Durand
 

En vedette (18)

Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
Autenticación vs. Autorización - ¿Cómo trabajar con el protocolo OAuth?
 
Tutorial ASP .NET
Tutorial ASP .NETTutorial ASP .NET
Tutorial ASP .NET
 
Guia programacion de reportes
Guia programacion de reportesGuia programacion de reportes
Guia programacion de reportes
 
C# conexión sql server2012-visualstudio2012-mantenimientos
C#   conexión sql server2012-visualstudio2012-mantenimientosC#   conexión sql server2012-visualstudio2012-mantenimientos
C# conexión sql server2012-visualstudio2012-mantenimientos
 
2 web-forms
2 web-forms2 web-forms
2 web-forms
 
Aplicaciones Web
Aplicaciones WebAplicaciones Web
Aplicaciones Web
 
Guia proyecto software clinica
Guia proyecto software clinicaGuia proyecto software clinica
Guia proyecto software clinica
 
Dce2 ejercicios asp.net
Dce2 ejercicios asp.netDce2 ejercicios asp.net
Dce2 ejercicios asp.net
 
Curso programación páginas web con ASP.NET
Curso programación páginas web con ASP.NETCurso programación páginas web con ASP.NET
Curso programación páginas web con ASP.NET
 
Desarrollo Web con ASP.NET MVC
Desarrollo Web con ASP.NET MVCDesarrollo Web con ASP.NET MVC
Desarrollo Web con ASP.NET MVC
 
Asp.net 4
Asp.net 4Asp.net 4
Asp.net 4
 
Trabajar con bases de datos desde ASP.NET
Trabajar con bases de datos desde ASP.NETTrabajar con bases de datos desde ASP.NET
Trabajar con bases de datos desde ASP.NET
 
Buenas Prácticas en el Desarrollo de Software
Buenas Prácticas en el Desarrollo de SoftwareBuenas Prácticas en el Desarrollo de Software
Buenas Prácticas en el Desarrollo de Software
 
Desarrollo de Aplicaciones Web con ASP.NET MVC5
Desarrollo de Aplicaciones Web con ASP.NET MVC5Desarrollo de Aplicaciones Web con ASP.NET MVC5
Desarrollo de Aplicaciones Web con ASP.NET MVC5
 
Microsoft Asp. Net [Asp.Net - Parte 2]
Microsoft Asp. Net [Asp.Net - Parte 2]Microsoft Asp. Net [Asp.Net - Parte 2]
Microsoft Asp. Net [Asp.Net - Parte 2]
 
ASP.NET
ASP.NETASP.NET
ASP.NET
 
Programacion de aplicaciones Web con ASP.NET
Programacion de aplicaciones Web con ASP.NETProgramacion de aplicaciones Web con ASP.NET
Programacion de aplicaciones Web con ASP.NET
 
SISTEMA DE FACTURACION (Ejemplo desarrollado)
SISTEMA DE FACTURACION (Ejemplo desarrollado)SISTEMA DE FACTURACION (Ejemplo desarrollado)
SISTEMA DE FACTURACION (Ejemplo desarrollado)
 

Similaire à Separata uni sql2008 administracion

Contrastación Sql 2005 y 2008
Contrastación Sql 2005 y 2008Contrastación Sql 2005 y 2008
Contrastación Sql 2005 y 2008Luis Vázquez
 
Que es sql server express 2008
Que es sql server express 2008Que es sql server express 2008
Que es sql server express 2008Martha
 
Arquitectura de datos empresariales informe power bi sql
Arquitectura de datos empresariales   informe power bi sqlArquitectura de datos empresariales   informe power bi sql
Arquitectura de datos empresariales informe power bi sqlCarlosTenelema1
 
SESIÓN 1 - SQL SERVER gratuito de cecap peru
SESIÓN 1 - SQL SERVER gratuito de cecap peruSESIÓN 1 - SQL SERVER gratuito de cecap peru
SESIÓN 1 - SQL SERVER gratuito de cecap peruLuisCabanillas26
 
Sql server
Sql serverSql server
Sql servermelasa7
 
Unidad 2. actividad 4
Unidad 2. actividad 4Unidad 2. actividad 4
Unidad 2. actividad 4melasa7
 
SQL Azure Small
SQL Azure SmallSQL Azure Small
SQL Azure SmallWarGeek
 
Sql azure
Sql azureSql azure
Sql azureWarGeek
 
Que es sql server express 2008
Que es sql server express 2008Que es sql server express 2008
Que es sql server express 2008Martha
 
Que es sql server express 2008
Que es sql server express 2008Que es sql server express 2008
Que es sql server express 2008Martha
 
Analisis Comparativo
Analisis Comparativo Analisis Comparativo
Analisis Comparativo JUAN ENRIQUE
 

Similaire à Separata uni sql2008 administracion (20)

SQL server 2008
SQL server 2008SQL server 2008
SQL server 2008
 
SQL server 2008
SQL server 2008SQL server 2008
SQL server 2008
 
Base de d.
Base de d.Base de d.
Base de d.
 
Contrastación Sql 2005 y 2008
Contrastación Sql 2005 y 2008Contrastación Sql 2005 y 2008
Contrastación Sql 2005 y 2008
 
SEMANA 1 Introduccion.pptx
SEMANA 1 Introduccion.pptxSEMANA 1 Introduccion.pptx
SEMANA 1 Introduccion.pptx
 
Oracle vs. sql server terminado
Oracle vs. sql server   terminadoOracle vs. sql server   terminado
Oracle vs. sql server terminado
 
Que es sql server express 2008
Que es sql server express 2008Que es sql server express 2008
Que es sql server express 2008
 
Oracle vs. sql server terminado
Oracle vs. sql server   terminadoOracle vs. sql server   terminado
Oracle vs. sql server terminado
 
Arquitectura de datos empresariales informe power bi sql
Arquitectura de datos empresariales   informe power bi sqlArquitectura de datos empresariales   informe power bi sql
Arquitectura de datos empresariales informe power bi sql
 
Estudiante
EstudianteEstudiante
Estudiante
 
Sql sever 2008
Sql sever 2008Sql sever 2008
Sql sever 2008
 
SESIÓN 1 - SQL SERVER gratuito de cecap peru
SESIÓN 1 - SQL SERVER gratuito de cecap peruSESIÓN 1 - SQL SERVER gratuito de cecap peru
SESIÓN 1 - SQL SERVER gratuito de cecap peru
 
Sql server
Sql serverSql server
Sql server
 
Unidad 2. actividad 4
Unidad 2. actividad 4Unidad 2. actividad 4
Unidad 2. actividad 4
 
Exposicion_Terabyte.pptx
Exposicion_Terabyte.pptxExposicion_Terabyte.pptx
Exposicion_Terabyte.pptx
 
SQL Azure Small
SQL Azure SmallSQL Azure Small
SQL Azure Small
 
Sql azure
Sql azureSql azure
Sql azure
 
Que es sql server express 2008
Que es sql server express 2008Que es sql server express 2008
Que es sql server express 2008
 
Que es sql server express 2008
Que es sql server express 2008Que es sql server express 2008
Que es sql server express 2008
 
Analisis Comparativo
Analisis Comparativo Analisis Comparativo
Analisis Comparativo
 

Dernier

Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOPsicoterapia Holística
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfpatriciaines1993
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024IES Vicent Andres Estelles
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOluismii249
 
semana 4 9NO Estudios sociales.pptxnnnn
semana 4  9NO Estudios sociales.pptxnnnnsemana 4  9NO Estudios sociales.pptxnnnn
semana 4 9NO Estudios sociales.pptxnnnnlitzyleovaldivieso
 
Abril 2024 - Maestra Jardinera Ediba.pdf
Abril 2024 -  Maestra Jardinera Ediba.pdfAbril 2024 -  Maestra Jardinera Ediba.pdf
Abril 2024 - Maestra Jardinera Ediba.pdfValeriaCorrea29
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primariaWilian24
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxNadiaMartnez11
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfGruberACaraballo
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxroberthirigoinvasque
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfUPTAIDELTACHIRA
 

Dernier (20)

Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
semana 4 9NO Estudios sociales.pptxnnnn
semana 4  9NO Estudios sociales.pptxnnnnsemana 4  9NO Estudios sociales.pptxnnnn
semana 4 9NO Estudios sociales.pptxnnnn
 
Abril 2024 - Maestra Jardinera Ediba.pdf
Abril 2024 -  Maestra Jardinera Ediba.pdfAbril 2024 -  Maestra Jardinera Ediba.pdf
Abril 2024 - Maestra Jardinera Ediba.pdf
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 

Separata uni sql2008 administracion

  • 1. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 1 C CA AP PI IT TU UL LO O 1 1  Instalación y configuración del SQL Server 2008  Ediciones del SQL Server 2008  Requerimientos de Hardware y Software
  • 2. Universidad Nacional de Ingeniería Pág. 2 danielramoscastaneda@hotmail.com SQL Administración I N S T A L A C I O N Y C O N F I G U R A C I O N D E L S Q L S E R V E R 2 0 0 8 Una de las primeras 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 2008. ¿QUÉ ES SQL SERVER 2008? SQL Server 2008 es una plataforma global de base de datos que ofrece administración de datos empresariales con herramientas integradas de inteligencia empresarial (BI). El motor de la base de datos SQL Server 2008 ofrece almacenamiento más seguro y confiable tanto para datos relacionales como estructurados, lo que le permite crear y administrar aplicaciones de datos altamente disponibles y con mayor rendimiento para utilizar en su negocio. El motor de datos SQL Server 2008 constituye el núcleo de esta solución de administración de datos empresariales. Asimismo, SQL Server 2008 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, escritorios 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 2008. 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 2008 ofrece soluciones innovadoras que le ayudan a obtener más valor de sus datos. HERRAMIENTAS QUE INCLUYE EL SQL SERVER 2008 Base de datos relacional. 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 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 con sistemas heterogéneos, incluidas las bases de datos Oracle existentes. Notification Services. Capacidades avanzadas de notificación para el desarrollo y el despliegue de aplicaciones escalables que pueden entregar actualizaciones de información personalizadas y oportunas a una diversidad de dispositivos conectados y móviles. Integration Services. Capacidades de extracción, transformación y carga (ELT) de datos para almacenamiento e integración de datos en toda la empresa.
  • 3. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 3 Analysis Services. 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. Reporting 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. 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 acceso de datos estándar reducen drásticamente el tiempo que demanda integrar los datos en SQL Server con los sistemas existentes. Asimismo, el soporte del servicio Web nativo está incorporado en SQL Server para garantizar la interoperabilidad con otras aplicaciones y plataformas. Herramientas de desarrollo. SQL Server ofrece herramientas integradas de desarrollo para el motor de base de datos, extracción, transformación y carga de datos, minerí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 (API) para ampliar el sistema de datos en cualquier dirección que sea específica de su negocio. NOVEDADES EN SQL SERVER 2008 SQL Server permite ejecutar aplicaciones de misión crítica, reduciendo costos de administración de infraestructura de datos y brindando introspectiva e información a todos los usuarios.  Confiable: Permite a las organizaciones ejecutar sus aplicaciones más críticas con niveles de seguridad, confiabilidad y escalabilidad muy altos.  Productivo: Permite reducir el tiempo y los costos requeridos para desarrollar y administrar sus infraestructuras de datos.  Inteligente: Ofrece una plataforma integral que brinda introspectiva e información donde sus usuarios lo desean Nuevas funcionalidades de SQL Server 2008: Protección de la Información  ¿Cómo podría saber si ha copiado la base de datos del servidor de producción de un cliente y lo han instalado en otra base de datos o si están accediendo a la información? Con SQL 2008, puede proteger la información con una clave de protección (Encriptación).  ¿Cómo podría saber que datos están siendo leídos y modificados, a qué hora y por quien? SQL 2008 da la opción de Auditora de Datos. Continuidad del Negocio  Si sus clientes necesitan estar siempre en línea con sus sistemas sin caídas, SQL 2008 ofrece mejoras en una técnica llamada “Mirroring”, el cual es una copia o espejo de la base de datos.  Si el disco se daña, donde reside los datos, SQL 2008 recupera la información de una copia reciente de los datos dañados al otro equipo espejo de manera transparente.
  • 4. Universidad Nacional de Ingeniería Pág. 4 danielramoscastaneda@hotmail.com SQL Administración  Ahorro en espacio en disco, mediante la técnica de comprensión, ahorrando costos en compra de discos si es que el volumen de la información de Base de Datos empieza a crecer en forma rápida. Datos Geoespaciales  Poder manejar información geográfica, la que hoy en día es de alta importancia en las organizaciones, con todo el tema de globalización Acceder a la Información desde cualquier lugar en cualquier momento  Con SQL 2008 podre crear rápidamente aplicaciones conectadas a la base de datos con la funcionalidad de funcionar en forma desconectada y después sincronizarlos con la base de datos central sin perder la línea de negocio y manteniendo los datos validados Reportes  Poder acceder a reportes directamente desde Word, mejoras en los tipos de gráficos en los reportes, haciéndolos más entendibles y poder editar los reportes de Microsoft Office, sin saber donde fue diseñado el reporte. LAS EDICIONES DEL SQL SERVER 2008 Cada una de las ediciones que se encuentran disponibles en el mercado, está dirigida a un grupo, para responder adecuadamente a las necesidades y requisitos de estos. EDICIONES DE SERVIDOR Término Definición Enterprise (x86, x64 e IA64)1 SQL Server Enterprise es una completa plataforma de datos que proporciona escalabilidad empresarial, rendimiento, alta disponibilidad y capacidades avanzadas de inteligencia empresarial para ejecutar aplicaciones seguras y esenciales para la empresa. Para obtener más información, vea http://msdn.microsoft.com/es- es/library/cc645993(v=SQL.100).aspx . Standard (x86 y x64) SQL Server Standard es una completa plataforma de datos que proporciona facilidad de uso y capacidad de administración. Esto incluye capacidades integradas de inteligencia empresarial para ejecutar aplicaciones de departamentos. Para obtener más información, vea http://msdn.microsoft.com/es- es/library/cc645993(v=SQL.100).aspx . SQL Server Standard for Small Business contiene todos los componentes técnicos y capacidades técnicas de SQL Server Standard y su uso está autorizado en un entorno de pequeña empresa con 75 equipos o menos. EDICIONES ESPECIALIZADAS Término Definición SQL Server 2008 Developer (x86, x64 e IA64) SQL Server 2008 Developer permite a los desarrolladores crear cualquier tipo de aplicación basada en SQL Server. Incluye toda la funcionalidad de SQL Server 2008 Enterprise, pero su uso está autorizado como sistema de desarrollo y pruebas, no como servidor de producción. SQL Server 2008 Developer es una opción ideal para las personas que crean y prueban aplicaciones. Puede actualizar SQL Server 2008 Developer para utilizarlo en producción. Workgroup (x86 y x64) SQL Server Workgroup es ideal para ejecutar bases de datos ubicadas en sucursales y proporciona una administración de datos confiable y una
  • 5. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 5 Término Definición plataforma de informes que incluye capacidades de sincronización y de administración seguras y remotas. Web (x86, x64) SQL Server 2008 Web es una opción con un costo total de propiedad bajo para los hosts de web y los sitios web que proporciona capacidades de administración y escalabilidad para propiedades web, tanto de pequeña como de gran escala. SQL Server Express (x86 y x64) SQL Server Express with Tools (x86 y x64) SQL Server Express con Advanced Services (x86 y x64) La plataforma de bases de datos de SQL Server Express se basa en SQL Server 2008. Es también la sustitución de Microsoft Desktop Engine (MSDE). Gracias a su integración con Visual Studio, SQL Server Express facilita el desarrollo de aplicaciones controladas por datos que tienen una gran capacidad, ofrecen un almacenamiento seguro y se implementan con rapidez. SQL Server Express es gratuito y los ISV pueden redistribuirlo (según su contrato). SQL Server Express es ideal para conocer y crear pequeñas aplicaciones de servidor y de escritorio. Esta edición es la mejor opción para los fabricantes de software independientes, los desarrolladores no profesionales y los aficionados que crean aplicaciones cliente. Si necesita características de base de datos más avanzadas, SQL Server Express se puede actualizar sin problemas a versiones más sofisticadas de SQL Server. Compact 3.5 SP1 (x86) Compact 3.1 (x86) SQL Server Compact 3.5 es una base de datos gratuita e incrustada, ideal para crear aplicaciones independientes que se conectan ocasionalmente para dispositivos móviles, escritorios y clientes web en todas las plataformas de Windows. COMPONENTES QUE VIENEN A ESCOGER EN EL SQL SERVER Componentes de servidor Descripción SQL Server Database Engine (Motor de base de datos de SQL Server) SQL Server Database Engine (Motor de base de datos de SQL Server) incluye Database Engine (Motor de base de datos), el servicio principal para almacenar, procesar y proteger datos; también incluye replicación, búsqueda de texto completo y herramientas para administrar datos XML y relacionales. Analysis Services Analysis Services incluye las herramientas para crear y administrar aplicaciones de procesamiento analítico en línea (OLAP) y de minería de datos. Reporting Services Reporting Services incluye componentes de servidor y de cliente para crear, administrar e implementar informes tabulares, matriciales, gráficos y de forma libre. Reporting Services también es una plataforma extensible que puede utilizarse para desarrollar aplicaciones de informes. Integration Services Integration Services es un conjunto de herramientas gráficas y objetos programables para mover, copiar y transformar datos. Herramientas de administración Descripción SQL Server Management Studio SQL Server Management Studio es un entorno integrado para tener acceso, configurar, administrar y desarrollar componentes de SQL Server.
  • 6. Universidad Nacional de Ingeniería Pág. 6 danielramoscastaneda@hotmail.com SQL Administración Herramientas de administración Descripción Management Studio permite a los desarrolladores de software y administradores con diferentes grados de experiencia usar SQL Server. Para la instalación de Management Studio, se requiere Internet Explorer 6 Service Pack 1 o una versión posterior. Administrador de configuración de SQL Server El Administrador de configuración de SQL Server proporciona administración de configuración básica para los servicios, protocolos de servidor, protocolos de cliente y alias de cliente de SQL Server. SQL Server Profiler SQL Server Profiler proporciona una interfaz gráfica de usuario para supervisar una instancia del Database Engine (Motor de base de datos) o de Analysis Services. Asistente para la optimización de Database Engine (Motor de base de datos) El Asistente para la optimización de Database Engine (Motor de base de datos) crea conjuntos óptimos de índices, vistas indizadas y particiones. Business Intelligence Development Studio Business Intelligence Development Studio es un IDE para las soluciones Analysis Services, Reporting Services y Integration Services. Para la instalación de BI Development Studio, se requiere Internet Explorer 6 Service Pack 1 o una versión posterior. Componentes de conectividad Instala componentes para la comunicación entre clientes y servidores, y bibliotecas de red para DB-Library, ODBC y OLE DB. NÚMERO MÁXIMO DE PROCESADORES COMPATIBLES 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 de un solo núcleo e hipersubprocesamiento con dos CPU lógicas por socket.  Un procesador de doble núcleo con dos CPU lógicas.  Un procesador de núcleo cuádruple con cuatro CPU lógicas.  SQL Server se utiliza bajo licencia para cada socket del procesador y no para cada CPU lógica. Edición de SQL Server 2008 Número de procesadores admitidos Enterprise Sistema operativo máximo Developer Sistema operativo máximo Standard 4 Web 4 Workgroup 2
  • 7. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 7 Edición de SQL Server 2008 Número de procesadores admitidos Express 1 Express with Tools 1 Express con Advanced Services 1 REQUISITOS DEL SISTEMA SQL SERVER 2008 Componente Requisito Marco de trabajo2 El programa de instalación de SQL Server instala los siguientes componentes de software requeridos por el producto: .NET Framework 3.5 SP11 SQL Server Native Client Archivos auxiliares para la instalación de SQL Server Software2 El programa de instalación de SQL Server requiere Microsoft Windows Installer 4.5 o una versión posterior Una vez instalados los componentes requeridos, el programa de instalación de SQL Server comprobará que el equipo en el que se ha instalado SQL Server 2008 también cumple los demás requisitos para su correcta instalación. Para obtener más información, vea Comprobar los parámetros del Comprobador de configuración del sistema. Software de red Los requisitos de software de red para las versiones de 64 bits de SQL Server 2008 son los mismos que para las versiones de 32 bits. Los sistemas operativos compatibles tienen el software de red integrado. Las instancias predeterminadas y con nombre independientes admiten los siguientes protocolos de red: Memoria compartida Canalizaciones con nombre TCP/IP VIA Nota La memoria compartida y VIA no se admiten en clústeres de conmutación por error. Virtualización SQL Server 2008 es compatible con entornos de máquina virtual que se ejecutan en la función Hyper-V de las ediciones Standard, Enterprise y Datacenter de Windows Server 2008 R2 y Windows Server 2008. La máquina virtual debe ejecutarse en un sistema operativo compatible con la edición de SQL Server 2008 concreta que se cita más adelante en este tema. Además de los recursos requeridos por la partición primaria, a cada máquina virtual (partición secundaria) se debe proporcionar suficientes recursos de procesador, memoria y recursos de disco para su instancia de SQL Server 2008. Los requisitos se enumeran más adelante en este tema.3 Dentro de la función Hyper-V de Windows Server 2008, se puede asignar un máximo de cuatro procesadores virtuales a máquinas virtuales que ejecuten las ediciones de 32 o 64 bits de Windows Server 2008. Se pueden asignar como máximo 2 procesadores virtuales a equipos virtuales que ejecuten ediciones de 32 bits de Windows Server 2003. Para equipos virtuales que alojan otros sistemas operativos, se puede asignar como máximo un procesador virtual a equipos
  • 8. Universidad Nacional de Ingeniería Pág. 8 danielramoscastaneda@hotmail.com SQL Administración Componente Requisito virtuales. Notas: Se recomienda cerrar SQL Server 2008 antes de apagar la máquina virtual. Para obtener más información sobre la función Hyper-V de Windows Server 2008, vea el sitio web de Windows Server 2008. La agrupación en clústeres de conmutación por error del invitado se admite en SQL Server 2008. Para obtener más información sobre las versiones admitidas de SQL Server y los sistemas operativos para la agrupación en clústeres de conmutación por error del invitado, y la compatibilidad con la virtualización, vea el tema que trata sobre la directiva de compatibilidad para los productos de Microsoft SQL Server que se ejecutan en un entorno virtual de hardware. Software de Internet Para todas las instalaciones de SQL Server 2008 se requiere Microsoft Internet Explorer 6 SP 1 o una versión posterior. Se requiere Internet Explorer 6 Service Pack 1 o una versión posterior para Microsoft Management Console (MMC), SQL Server Management Studio, Business Intelligence Development Studio, el componente Diseñador de informes de Reporting Services y la Ayuda HTML. Disco duro Las necesidades de espacio en disco variarán con los componentes de SQL Server 2008 que instale. Para obtener más información, vea Requisitos de espacio en disco duro, más adelante en este tema. Unidad Para la instalación desde disco se necesita una unidad de CD o DVD. Pantalla Las herramientas gráficas de SQL Server 2008 requieren VGA o una resolución mayor: resolución mínima de 1.024 x 768 píxeles. Otros dispositivos Dispositivo señalador: se necesita un mouse Microsoft o dispositivo señalador compatible. Nota: Las versiones de 64 bits de SQL Server 2008 incluyen soporte para sistemas extendidos, también conocidos como Windows on Windows (WOW64). WOW64 es una característica de las ediciones de 64 bits de Microsoft Windows que permite que las aplicaciones de 32 bits se ejecuten de forma nativa en modo de 32 bits. Las aplicaciones funcionan en modo de 32 bits aunque el sistema operativo subyacente se ejecute en la plataforma de 64 bits. Componente Requisito Procesador Tipo de procesador: Mínimo: AMD Opteron, AMD Athlon 64, Intel Xeon compatible con Intel EM64T, Intel Pentium IV compatible con EM64T Velocidad de procesador: Mínimo: 1,4 GHz Recomendado: 2,0 GHz o más Sistema operativo Windows Server 2003 SP2 de 64 bits x64 Standard1 Windows Server 2003 SP2 de 64 bits x64 Datacenter1 Windows Server 2003 SP2 de 64 bits x64 Enterprise1 Windows Server 2008 de 64 bits x64 Standard Windows Server 2008 de 64 bits x64 Standard sin Hyper-V Windows Server 2008 de 64 bits x64 Datacenter
  • 9. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 9 Componente Requisito Windows Server 2008 de 64 bits x64 Datacenter sin Hyper-V1 Windows Server 2008 de 64 bits x64 Enterprise Windows Server 2008 de 64 bits x64 Enterprise sin Hyper-V1 Windows Server 2008 R2 de 64 bits x64 Web1,2 Windows Server 2008 R2 de 64 bits x64 Standard1,2 Windows Server 2008 R2 de 64 bits x64 Enterprise1,2 Windows Server 2008 R2 de 64 bits x64 Datacenter1,2 Memoria RAM: Mínimo: 512 MB Recomendado: 2,048 GB o más Máximo: máximo del sistema operativo CONSIDERACIONES SOBRE LA SEGURIDAD Para iniciar Management Studio, elija Programas>Microsoft SQL Server 2008>SQL Server Management Studio en el menú de Inicio de Windows. Management Studio se instala durante la instalación de Sql Server 2008. Al abrirse, le pide que se conecte a una instancia de SQL Server. En cuanto se conecte, la instancia de SQL Server aparece en el Explorador de objetos. Si fuera necesario, se podría dar a conocer características especiales sobre la conexión, para ello, hay que hacer clic sobre el botón Options, luego, aparecerá la siguiente pantalla.
  • 10. Universidad Nacional de Ingeniería Pág. 10 danielramoscastaneda@hotmail.com SQL Administración 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 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 Connect. Seguidamente, veremos la pantalla del Management Studio.
  • 11. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 11 Instalando el SQL Server 2008 Una vez que hayan decidido la Edición a utilizar del SQL Server 2008, procederemos a instalar el software.
  • 12. Universidad Nacional de Ingeniería Pág. 12 danielramoscastaneda@hotmail.com SQL Administración
  • 13. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 13 Aquí dan a conocer todos los servicios que van a utilizar:
  • 14. Universidad Nacional de Ingeniería Pág. 14 danielramoscastaneda@hotmail.com SQL Administración Si tuvieran que crear una nueva instancia, aquí deberán de dar el nombre de esta:
  • 15. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 15
  • 16. Universidad Nacional de Ingeniería Pág. 16 danielramoscastaneda@hotmail.com SQL Administración Tener en cuenta que la instalación se debe de hacer con el usuario que tenga máximos privilegios, además de tener una contraseña.
  • 17. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 17
  • 18. Universidad Nacional de Ingeniería Pág. 18 danielramoscastaneda@hotmail.com SQL Administración
  • 19. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 19
  • 20. Universidad Nacional de Ingeniería Pág. 20 danielramoscastaneda@hotmail.com SQL Administración
  • 21. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 21
  • 22. Universidad Nacional de Ingeniería Pág. 22 danielramoscastaneda@hotmail.com SQL Administración
  • 23. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 23 C CA AP PI IT TU UL LO O 2 2  Administración de la Base de Datos y Archivos  Planificación de la BD.  Creación de la BD.  Administración de la BD.  Uso de Schemas y FileGroups.
  • 24. Universidad Nacional de Ingeniería Pág. 24 danielramoscastaneda@hotmail.com SQL Administración C R E A C I Ó N D E L A B D 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 Databases, luego clic derecho. Del menú contextual, seleccionar la alternativa New Database, 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 Add, luego aparecerá la siguiente pantalla.
  • 25. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 25 Desde aquí podremos crear los nuevos grupos de archivo, con los cuales trabajará nuestra base de datos. 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 miproyecto; 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 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, MAXSIZE = 50, FILEGROWTH = 5 ) LOG ON ( NAME = Ventitas _log, FILENAME = '''+ @data_path + ' Ventitaslog.ldf'', SIZE = 5MB, MAXSIZE = 25MB,
  • 26. Universidad Nacional de Ingeniería Pág. 26 danielramoscastaneda@hotmail.com SQL Administración FILEGROWTH = 5MB )' ); GO Creando una base de datos con múltiples archivos, los archivos con extensiones mdf contienen los archivos primarios, los ndf contienen los archivos secundarios y los ldf 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 datos master para definir una base de datos cuando utilice instrucciones Transact- SQL. 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. Las opciones o configuraciones de la base de datos model se copian en la nueva base de datos. Importante, se recomienda hacer una copia de seguridad de la base de datos master cada vez que cree, modifique o elimine una base de datos. Al crear una base de datos se pueden establecer los siguientes parámetros: PRIMARY
  • 27. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 27 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 mdf. Si no se especifica la palabra clave PRIMARY, el primer 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 parámetro especifica el tamaño máximo hasta el que puede crecer el archivo. Puede especificar el tamaño en megabytes (valor predeterminado) o en kilobytes. Si no se especifica el tamaño, el archivo crece 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 incluye las reglas que gobiernan el uso de caracteres de un lenguaje o un alfabeto.
  • 28. Universidad Nacional de Ingeniería Pág. 28 danielramoscastaneda@hotmail.com SQL Administración Registro de Transacciones 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 modificaciones al registro en disco cuando se ejecutan, antes de que se escriban en la base de datos. El proceso de registro es el siguiente: La aplicación envía una modificación de datos. Cuando la modificación se ejecuta, las páginas de datos afectadas 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 de modificació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 repetitiva, el proceso de punto de comprobación escribe en disco todas las transacciones completadas en la base de datos. Si se produce un error del sistema, el proceso automático de recuperación utiliza el registro de transacciones para aplicar todas las transacciones confirmadas y deshacer las transacciones incompletas. Los marcadores de transacción del registro se utilizan durante la recuperació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 Buffer Cache Páginas de datos se encuentran en, o se leen, en el buffer de caché y son modificados 2 La modificación se registra en diario de las transacciones en el disco 3 Checkpoint escribe cometido de las transacciones en la base de datos 4 Modificaciones de datos es enviada por la aplicación 1 Disk Disk
  • 29. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 29 un marcador COMMIT TRANSACTION asociado. Las páginas de datos se escriben en disco cuando existe un punto de comprobación. Administración de la 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 medio de la instrucción ALTER DATABASE. Puede configurar varias opciones de base de datos, pero sólo se puede hacer en una sola base de datos al mismo tiempo. Para que las opciones afecten a todas las bases de datos nuevas, cambie la base de datos model. La tabla siguiente enumera algunas de las opciones de uso más frecuente. Propiedad Descripción Valor Retornado Opciones automáticas AUTO_CREATE_STATISTICS Crea automáticamente las estadísticas que faltan que son necesarias para la optimización de consultas. El valor predeterminado es ON. AUTO_UPDATE_STATISTICS Actualiza automáticamente las estadísticas desfasadas necesarias para la optimización de consultas. El valor predeterminado es ON. Opciones de cursor CURSOR_CLOSE_ON_COMMIT Cierra automáticamente los cursores abiertos cuando se confirma una transacción. El valor predeterminado es OFF y los cursores permanecen abiertos. CURSOR_DEFAULT LOCAL | GLOBAL CURSOR_DEFAULT_LOCAL limita el ámbito del cursor. Es local al lote, procedimiento almacenado o desencadenador en el que se creó el cursor. CURSOR_DEFAULT_GLOBAL es el valor predeterminado; el ámbito del cursor es global respecto a la conexión. Opciones de recuperación RECOVERY FULL | BULK_LOGGED | SIMPLE FULL proporciona recuperabilidad completa ante errores del medio; es el valor predeterminado. BULK_LOGGED utiliza menos espacio de registro porque el registro es mínimo, pero tiene un riesgo mayor de exposición. SIMPLE recupera la base de datos sólo hasta la última copia de seguridad completa de la base de datos o hasta la última copia de seguridad diferencial. TORN_PAGE_DETECTION Permite a SQL Server detectar
  • 30. Universidad Nacional de Ingeniería Pág. 30 danielramoscastaneda@hotmail.com SQL Administración Propiedad Descripción Valor Retornado operaciones de E/S incompletas causadas por cortes de energía u otros apagones del sistema. El valor predeterminado es ON. Opciones de SQL ANSI_NULL_DEFAULT Permite al usuario controlar la capacidad de asignación predeterminada de valores NULL de la base de datos. ANSI_NULLS Si está activada, todas las comparaciones con un valor nulo se evalúan como NULL (desconocido). Si está desactivada, todas las comparaciones de valores no Unicode con un valor nulo se evalúan como verdaderas (TRUE) si ambos valores son NULL. De manera predeterminada, la opción de base de datos ANSI_NULLS es OFF. Opciones de estado READ_ONLY | READ_WRITE Define la base de datos como de sólo lectura (se utiliza para establecer la seguridad en las bases de datos de ayuda a la toma de decisiones) o devuelve la base de datos a operaciones de lectura y escritura. SINGLE_USER | RESTRICTED_USER | MULTI_USER SINGLE_USER permite que los usuarios se conecten a la base de datos de uno en uno. Todas las demás conexiones se interrumpen. RESTRICTED_USER permite que sólo los miembros de la función fija de base de datos db_owner y de las funciones fijas de servidor dbcreator y sysadmin se conecten a la base de datos. MULTI_USER permite que todos los usuarios con los permisos adecuados se conecten a la base de datos. MULTI_USER es la opción predeterminada. Recuperación de información de la base de datos 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.
  • 31. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 31 La siguiente tabla enumera algunas de las propiedades de la base de datos. Propiedad Descripción Valor retornado Collation nombre por defecto para la base de datos. Collation name NULL = Database is not started. Base data type: nvarchar(128) ComparisonStyle The Windows comparison style of the collation. ComparisonStyle is a bitmap that is calculated by using the following values. Style Value Ignore case 1 Ignore accent 2 Ignore Kana 65536 Ignore width 131072 For example, the default of 196609 is the result of combining the Ignore case, Ignore Kana, and Ignore width options. Returns the comparison style. Returns 0 for all binary collations. Base data type: int IsAnsiNullDefault Base de datos sigue normas ISO para permitir valores nulos. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsAnsiNullsEnabled Todas las comparaciones a nulo para evaluar desconocidos. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsAnsiPaddingEnabled Cadenas son rellenadas con la misma longitud antes de comparación o inserción. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsAnsiWarningsEnabled Mensajes de error o de advertencia se emiten cuando un error estándar se produce. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsArithmeticAbortEnabled Las consultas se terminan cuando un error por desbordamiento o división por cero se produce durante la ejecución de las consultas. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsAutoClose Base de Datos se cierra limpiando y liberando recursos a partir de la 1 = TRUE 0 = FALSE NULL = Input not valid
  • 32. Universidad Nacional de Ingeniería Pág. 32 danielramoscastaneda@hotmail.com SQL Administración Propiedad Descripción Valor retornado última salida de usuario Base data type: int IsAutoCreateStatistics Falta de estadísticas que se requieren de una consulta para la optimización automática se construyó durante la consulta de optimización. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsAutoShrink Archivos de Base de datos son candidatos para periódos automáticos de disminución. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsAutoUpdateStatistics Estadísticas existentes son actualizadas automáticamente, por las estadísticas de fuera de fecha, porque los datos en las tablas han cambiado. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsCloseCursorsOnCommitEnabled Cursores que están abiertas cuando una transacción se ha comprometido están cerradas 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsFulltextEnabled Base de Datos con full- text permitido. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsInStandBy Base de Datos esta online como read-only, con restauración del log permitido. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsLocalCursorsDefault Declaración del Cursor por defecto como LOCAL 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsMergePublished Las tablas de una Base de Datos pueden ser publicadas para una replicación, si la replicación está instalada. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsNullConcat Concatenación de operaciones Null rinden con NULL. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsNumericRoundAbortEnabled Los errores se generan cuando la pérdida de precisión se produce en las expresiones 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsParameterizationForced PARAMETERIZATION de la base de datos con la opción SET es FORCED. 1 = TRUE 0 = FALSE NULL = Input not valid
  • 33. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 33 Propiedad Descripción Valor retornado IsQuotedIdentifiersEnabled Doble comillas se puede utilizar en identificadores. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsPublished Las tablas de la base de datos pueden ser publicados por la instantánea o la replicación transaccional, si se instala la replicación. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsRecursiveTriggersEnabled Recursivo disparo de factores desencadenantes está activado 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsSubscribed Base de datos está suscrito a una publicación 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsSyncWithBackup La base de datos es una base de datos de publicación o una base de datos de distribución, y puede ser restaurada sin interrumpir la replicación transaccional. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int IsTornPageDetectionEnabled El SQL Server Database Engine Engine detecta operaciones incompletas de E/S causados por fallos de energía o cortes de otro sistema. 1 = TRUE 0 = FALSE NULL = Input not valid Base data type: int LCID El identificador de Windows local (LCID) de la colación. LCID value (in decimal format). Base data type: int For a list of LCID values (in hexadecimal format), see Collation Settings in Setup. Recovery Modelo de recuperación para la base de datos FULL = Full recovery model BULK_LOGGED = Bulk logged model SIMPLE = Simple recovery model Base data type: nvarchar(128) SQLSortOrder SQL Server sort order ID supported in earlier versions of SQL Server SQL Server ordenanimiento, apoya ordenamiento por ID en las versiones anteriores de SQL Server 0 = Database is using Windows collation >0 = SQL Server sort order ID NULL = Input not valid or database is not started Base data type: tinyint Status Estado de la Base de ONLINE = Database is
  • 34. Universidad Nacional de Ingeniería Pág. 34 danielramoscastaneda@hotmail.com SQL Administración Propiedad Descripción Valor retornado Datos. available for query. OFFLINE = Database was explicitly taken offline. RESTORING = Database is being restored. RECOVERING = Database is recovering and not yet ready for queries. SUSPECT = Database did not recover. EMERGENCY = Database is in an emergency, read-only state. Access is restricted to sysadmin members Base data type: nvarchar(128) Updateability Indica si los datos pueden ser modificados READ_ONLY = Data can be read but not modified. READ_WRITE = Data can be read and modified. Base data type: nvarchar(128) UserAccess Indica que los usuarios puedan acceder a la base de datos. SINGLE_USER = Only one db_owner, dbcreator, or sysadmin user at a time RESTRICTED_USER = Only members of db_owner, dbcreator, and sysadmin roles MULTI_USER = All users Base data type: nvarchar(128) Version Número de versión interna del código SQL Server con el que la base de datos se ha creado. Identificado sólo con fines informativos. No soportado. La compatibilidad en el futuro no está garantizada. Version number = Database is open. NULL = Database is not started. Base data type: int La siguiente tabla enumera los procedimientos almacenados del sistema de uso común que presentan información acerca de las bases de datos y sus parámetros. Procedimiento almacenado de sistema Descripción 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
  • 35. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 35 Procedimiento almacenado de sistema Descripción de la base de datos. sp_helpdb baseDeDatos Informa sólo acerca de la base de datos especificada. 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] Resume el espacio de almacenamiento que utiliza una base de datos o un objeto de base de datos. Componentes físicos: archivos y grupos de archivos de bases de datos (FileGroup). Un grupo de archivos es un conjunto lógico de archivos de datos que permite a los administradores 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. Tipos de grupos de archivos SQL Server 2008 tiene un grupo de archivos principal y también puede tener grupos de archivos definidos por el usuario.
  • 36. Universidad Nacional de Ingeniería Pág. 36 danielramoscastaneda@hotmail.com SQL Administración 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 agrupados con fines de asignación y administrativos. Estos otros archivos de datos se conocen como archivos secundarios de datos y suelen utilizar la extensión .ndf. SITUACIÓ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 para separar los 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 colocar los archivos OrdHist1.ndf y OrdHist2.ndf en discos diferentes si ambos se consultaran con mucha frecuencia. No puede poner archivos de registro de transacciones en grupos de archivos. El espacio del registro de transacciones se administra por separado del espacio de datos. Los registros de transacciones suelen utilizar la extensión .ldf. 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. CUÁNDO CREAR GRUPOS DE ARCHIVOS Puede crear varios archivos de datos en discos diferentes y crear un grupo de archivos definido por el usuario para contener los archivos. Las dos razones principales para utilizar grupos de archivos son mejorar el rendimiento y controlar la colocación física de datos.
  • 37. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 37 Uso de varios archivos en un único grupo de archivos para mejorar el rendimiento Si bien Matriz redundante de discos independientes (RAID) es la manera preferida de mejorar el rendimiento de una base de datos, puede asignar varios archivos de discos distintos a un único grupo de archivos para mejorar el rendimiento implementando una forma de seccionamiento de datos dentro de SQL Server. Puesto que SQL Server utiliza una estrategia de relleno proporcional al escribir datos en un grupo de archivos, los datos se reparten entre los archivos y, por tanto, en las particiones físicas del disco. Este método permite tener un control más fino sobre el seccionamiento de datos del que se puede lograr al crear un conjunto de volúmenes seccionados en el sistema operativo Windows, o utilizando una controladora de matriz RAID. Nota: En la mayoría de los casos, el uso de las funciones de seccionamiento de RAID Proporciona la misma ganancia de rendimiento que podría lograr utilizando grupos de archivos definidos por el usuario, sin la carga administrativa agregada que supone definir y administrar los grupos de archivos. USO DE VARIOS GRUPOS DE ARCHIVOS PARA CONTROLAR LA COLOCACIÓN FÍSICA DE LOS DATOS Para utilizar grupos de archivos con el fin de simplificar el mantenimiento o lograr objetivos de diseño, puede: Almacenar los datos de lectura y escritura separados de los datos de sólo lectura para mantener separados los diferentes tipos de actividad de E/S de disco. Almacenar los índices en discos diferentes que las tablas, lo que puede conducir a un mayor rendimiento. Hacer copia de seguridad o restaurar archivos individuales o grupos de archivos en lugar de hacer copia de seguridad o restaurar una base de datos entera. Puede ser
  • 38. Universidad Nacional de Ingeniería Pág. 38 danielramoscastaneda@hotmail.com SQL Administración necesario hacer copia de seguridad de archivos o de grupos de archivos para las bases de datos grandes con el fin de tener una estrategia eficaz de copia de seguridad y restauración. Agrupar en los mismos grupos de archivos las tablas y los índices que tienen unos requisitos de mantenimiento similares. Quizás desee realizar tareas de mantenimiento en algunos objetos con más frecuencia que en otros. Por ejemplo, si crea dos grupos de archivos y les asigna tablas, puede ejecutar las tareas diarias de mantenimiento en las tablas de un grupo diario y las tareas de mantenimiento semanales en las tablas de un grupo semanal. Esto limita la contención de disco entre los dos grupos de archivos. Separar las tablas de usuario y otros objetos de base de datos de las tablas del sistema en el grupo de archivos principal. También debe cambiar el grupo de archivos predeterminado para evitar que el crecimiento inesperado de las tablas restrinja las tablas del sistema del grupo de archivos principal. Almacenar las particiones de una tabla con particiones en varios grupos de archivos. Ésta es una buena forma de separar físicamente los datos que tienen necesidades de acceso diferentes dentro de una única tabla, y también puede proporcionar ventajas de facilidad de administración y rendimiento. Creación de esquemas Los desarrolladores que hayan trabajado con Microsoft .NET Framework o con XML estarán familiarizados con el concepto de espacios 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 2008 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 procedimientos 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 2008.
  • 39. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 39 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 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 de la tabla incluye el nombre del servidor, la base de datos y el esquema. Por ejemplo, el nombre completo de la tabla ErrorLog del esquema dbo 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 2008, los esquemas están separados de la propiedad de los objetos, lo que proporciona las ventajas siguientes: Mayor flexibilidad a la hora de organizar los objetos de base de datos en espacios de nombres, ya que la agrupación de objetos en esquemas no depende de la propiedad de los objetos. Administración de permisos más sencilla, ya que se puede otorgar permisos en el ámbito del esquema y en los objetos individuales. Facilidad de administración mejorada, porque al quitar a un usuario no es necesario 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. 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 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
  • 40. Universidad Nacional de Ingeniería Pág. 40 danielramoscastaneda@hotmail.com SQL Administración GO CREATE SCHEMA Sales GO Cómo funciona la 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 para controlar cómo se resuelven los nombres de objetos incompletos. CÓMO FUNCIONA LA RESOLUCIÓN DE NOMBRES SQL Server 2008 utiliza el proceso siguiente para resolver un nombre de objeto incompleto: Si el usuario tiene un esquema predeterminado, SQL Server intenta encontrar el objeto en ese esquema predeterminado. Si el objeto no se encuentra en el esquema predeterminado del usuario, si el usuario no tiene ningún esquema predeterminado, SQL Server intenta encontrar el objeto en el esquema dbo.
  • 41. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 41 Por ejemplo, un usuario que tiene el esquema predeterminado Person ejecuta la siguiente instrucción Transact-SQL: SELECT * FROM Contact SQL Server 2008 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. Asignación de un esquema predeterminado Puede asignar un esquema predeterminado a un usuario utilizando el cuadro de diálogo Propiedades de Usuario de la base de datos o especificando 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 para el usuario Angello: ALTER USER Angello WITH DEFAULT_SCHEMA = Sales
  • 42. Universidad Nacional de Ingeniería Pág. 42 danielramoscastaneda@hotmail.com SQL Administración C CA AP PI IT TU UL LO O 3 3  Planificación de una Estrategia de Backups  Realizando el Backup de la BD  Restaurando una BD  Recuperación de datos desde Snapshots
  • 43. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 43 P L A N I F I C A C I Ó N D E U N A E S T R A T E G I A D E B A C K U P S 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 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 de un desastre. Tipos de Backup Descripción Full Todos los archivos de la Base de Datos, datos (MDF y NDF) y de transacciones (LDF). Transaction Log Cualquier cambio en la Base de Datos, es guardado en el archivo de transacciones. Tail-Log La porción activa del archivo de transacciones. Differential Las partes de la Base de Datos que han cambiado desde el último backup completo a la Base de Datos. File / Filegroup Archivos específicos o grupos de archivos. Partial El grupo de archivos primario, cada grupo de archivos de lectura/escritura, y cualquier grupo de archivos especificado como lectura/escritura. Copy-only La Base de Datos o el archivo de Transacciones (sin afectar la secuencia de backup). Realizando el Backup de la BD Uso de la Instrucción BACKUP DATABASE Realiza una copia de seguridad completa de la base de datos o de uno o varios archivos o grupos de archivos (BACKUP DATABASE). 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 transacciones (BACKUP LOG). Sintaxis --creando un backup BACKUP DATABASE { database_name | @database_name_var } TO <backup_device> [ ,...n ]
  • 44. Universidad Nacional de Ingeniería Pág. 44 danielramoscastaneda@hotmail.com SQL Administración [ <MIRROR TO clause> ] [ next-mirror-to ] [ WITH { DIFFERENTIAL | <general_WITH_options> [ ,...n ] } ] [;] --Backup para Files o Filegroups BACKUP DATABASE { database_name | @database_name_var } <file_or_filegroup> [ ,...n ] TO <backup_device> [ ,...n ] [ <MIRROR TO clause> ] [ next-mirror-to ] [ WITH { DIFFERENTIAL | <general_WITH_options> [ ,...n ] } ] [;] --Creando un Backup Parcial BACKUP DATABASE { database_name | @database_name_var } READ_WRITE_FILEGROUPS [ , <read_only_filegroup> [ ,...n ] ] TO <backup_device> [ ,...n ] [ <MIRROR TO clause> ] [ next-mirror-to ] [ WITH { DIFFERENTIAL | <general_WITH_options> [ ,...n ] } ] [;] Argumentos 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. Se realiza la copia de seguridad del registro desde la última copia 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 de seguridad completa. { database_name | @database_name_var } 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. <file_or_filegroup> [ ,...n ] Se utiliza sólo con BACKUP DATABASE, especifica 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 } 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_var }
  • 45. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 45 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_name | @logical_filegroup_name_var } [ ,...n ] ] Especifica una copia de seguridad parcial. Una copia de 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. 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_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 "<file_or_filegroup>", 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 <backup_device> [ ,...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). <backup_device> 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 variable (@logical_device_name_var), el nombre del dispositivo de copia de seguridad se puede especificar como una constante de cadena (@logical_device_name_var = nombre del dispositivo de copia 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_var } Especifica un archivo de disco o un dispositivo de cinta.
  • 46. Universidad Nacional de Ingeniería Pág. 46 danielramoscastaneda@hotmail.com SQL Administración No es necesario que exista un dispositivo de disco antes de que se especifique 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 <backup_device> [ ,...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 dispositivos 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 2008 Enterprise Edition y versiones posteriores. <backup_device> Vea "<backup_device>", en un apartado anterior de esta 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. Opciones de WITH 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 completa. Utilice esta opción para que no tenga que aplicar todas las copias de 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 = { password | @password_variable } Establece la contraseña del conjunto de copia de seguridad. PASSWORD es una cadena de caracteres.
  • 47. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 47 Si se define una contraseña para el conjunto de copia de seguridad, debe suministrarla para realizar operaciones de restauración de SQL Server de ese conjunto de copia de seguridad. No obstante, la contraseña del conjunto de copia de seguridad no impide que se sobrescriba el archivo de copia de seguridad. Para evitar que se sobrescriba el archivo de copia de seguridad, utilice una contraseña para el conjunto de medios (vea la opción MEDIAPASSWORD más adelante en esta tabla). (Para obtener más información sobre cómo utilizar las contraseñas, vea "Permisos", más adelante en este tema.) Utilizando el Management del SQL Server Primero nos ubicamos en el explorador de objetos, y luego hacemos clic derecho sobre la base de datos, seguidamente, haremos clic sobre la opción de propiedades de la base de datos. Luego, en la opción “Recovery Model”, seleccionaremos la alternativa “Full”, con la cual, podremos realizar todos los tipos de Backup de nuestra Base de Datos.
  • 48. Universidad Nacional de Ingeniería Pág. 48 danielramoscastaneda@hotmail.com SQL Administración 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 “Back Up..” (ver figura). Luego aparecerá la siguiente pantalla, en la cual seleccionaremos el tipo de Backup a realizar.
  • 49. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 49 Una vez que hayamos realizado las configuraciones del caso, procederemos a hacer clic sobre el botón “OK”, luego de algunos instantes, aparecerá la siguiente pantalla. Restaurando una BD Para realizar la restauración de una Base de Datos, podemos hacer uso de la instrucción RESTORE, o de los 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 completa a partir de una copia de seguridad completa de la base de datos (restauración completa).  Restaurar parte de una base de datos (restauración parcial).  Restaurar archivos o grupos de archivos en una base de datos (restauración de archivos).  Restaurar páginas específicas en una base de datos (restauración de páginas).  Restaurar un registro de transacciones en una base de datos (restauración del registro de transacciones).  Revertir una base de datos al punto temporal 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 <backup_device> [ ,...n ] ] [ WITH { [ RECOVERY | NORECOVERY | STANDBY = {standby_file_name | @standby_file_name_var } ] | , <general_WITH_options> [ ,...n ] | , <replication_WITH_option> | , <change_data_capture_WITH_option> | , <service_broker_WITH options> | , <point_in_time_WITH_options—RESTORE_DATABASE> } [ ,...n ] ] [;] --To perform the first step of the initial restore sequence -- of a piecemeal restore: RESTORE DATABASE { database_name | @database_name_var } <files_or_filegroups> [ ,...n ] [ FROM <backup_device> [ ,...n ] ] WITH
  • 50. Universidad Nacional de Ingeniería Pág. 50 danielramoscastaneda@hotmail.com SQL Administración PARTIAL, NORECOVERY [ , <general_WITH_options> [ ,...n ] | , <point_in_time_WITH_options—RESTORE_DATABASE> ] [ ,...n ] [;] --To Restore Specific Files or Filegroups: RESTORE DATABASE { database_name | @database_name_var } <file_or_filegroup> [ ,...n ] [ FROM <backup_device> [ ,...n ] ] WITH { [ RECOVERY | NORECOVERY ] [ , <general_WITH_options> [ ,...n ] ] } [ ,...n ] [;] --To Restore Specific Pages: RESTORE DATABASE { database_name | @database_name_var } PAGE = 'file:page [ ,...n ]' [ , <file_or_filegroups> ] [ ,...n ] [ FROM <backup_device> [ ,...n ] ] WITH NORECOVERY [ , <general_WITH_options> [ ,...n ] ] [;] --To Restore a Transaction Log: RESTORE LOG { database_name | @database_name_var } [ <file_or_filegroup_or_pages> [ ,...n ] ] [ FROM <backup_device> [ ,...n ] ] [ WITH { [ RECOVERY | NORECOVERY | STANDBY = {standby_file_name | @standby_file_name_var } ] | , <general_WITH_options> [ ,...n ] | , <replication_WITH_option> | , <point_in_time_WITH_options—RESTORE_LOG> } [ ,...n ] ] [;] RESTORE DATABASE { database_name | @database_name_var } FROM DATABASE_SNAPSHOT = database_snapshot_name 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.
  • 51. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 51 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 no autorizadas de los conjuntos de copia de seguridad en medios que utilizan herramientas de SQL Server. No obstante, los medios protegidos con contraseña se pueden sobrescribir mediante la opción FORMAT de la instrucción BACKUP. Ejemplos sobre el uso del RESTORE A. Restaurar una base de datos completa En el siguiente ejemplo se restaura una copia de seguridad completa de la base de datos desde un dispositivo lógico de copia de seguridad de AdventureWorksBackups RESTORE DATABASE AdventureWorks FROM AdventureWorksBackups B. Restaurar copias de seguridad de bases de datos completas y diferenciales En el siguiente ejemplo se restaura una copia de seguridad completa después de una copia de seguridad diferencial del dispositivo de copia de seguridad Z:SQLServerBackupsAdventureWorks.bak, que contiene las dos copias de seguridad. 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 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:SQLServerBackupsAdventureWorks.bak' WITH FILE = 6 NORECOVERY; RESTORE DATABASE AdventureWorks FROM DISK = 'Z:SQLServerBackupsAdventureWorks.bak' WITH FILE = 9 RECOVERY; C. Restaurar una base de datos con la sintaxis de RESTART En el ejemplo siguiente se usa la opción RESTART para reiniciar una operación RESTORE interrumpida por un error de alimentación del servidor. -- This database RESTORE halted prematurely due to power failure. RESTORE DATABASE AdventureWorks FROM AdventureWorksBackups -- Here is the RESTORE RESTART operation. RESTORE DATABASE AdventureWorks FROM AdventureWorksBackups WITH RESTART D. Restaurar una base de datos y mover archivos En el ejemplo siguiente se restaura una base de datos completa y el registro de transacciones, y se mueve la base de datos restaurada al directorio C:Program FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLData. RESTORE DATABASE AdventureWorks FROM AdventureWorksBackups WITH NORECOVERY, MOVE 'AdventureWorks_Data' TO
  • 52. Universidad Nacional de Ingeniería Pág. 52 danielramoscastaneda@hotmail.com SQL Administración 'C:Program FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLDataNewAdvWorks.mdf', MOVE 'AdventureWorks_Log' TO 'C:Program FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLDataNewAdvWorks.ldf' RESTORE LOG AdventureWorks FROM AdventureWorksBackups WITH RECOVERY E. Copiar una base de datos con BACKUP y RESTORE En el ejemplo siguiente se usan las instrucciones BACKUP y RESTORE para realizar una copia de la base de datos AdventureWorks. La instrucción MOVE hace que se restauren los datos y el archivo de registro en las ubicaciones especificadas. La instrucción RESTORE FILELISTONLY se usa para determinar el número y los nombres de los archivos de la base de datos que se están restaurando. La nueva copia de la base de datos se llama TestDB. Para obtener más información, vea RESTORE FILELISTONLY (Transact-SQL). BACKUP DATABASE AdventureWorks TO AdventureWorksBackups ; RESTORE FILELISTONLY FROM AdventureWorksBackups ; RESTORE DATABASE TestDB FROM AdventureWorksBackups WITH MOVE 'AdventureWorks_Data' TO 'C:MySQLServertestdb.mdf', MOVE 'AdventureWorks_Log' TO 'C:MySQLServertestdb.ldf'; GO F. Restaurar con la sintaxis de FILE y FILEGROUP En el siguiente ejemplo se restaura una base de datos llamada MyDatabase que tiene dos archivos, un grupo de archivos secundario y un registro de transacciones. La base de datos usa el modelo de recuperación completa. La copia de seguridad de la base de datos es el noveno conjunto de copia de seguridad del conjunto de medios en un dispositivo lógico de copia de seguridad llamado MyDatabaseBackups. A continuación se restauran mediante WITH NORECOVERY tres copias de seguridad de registros que están en los tres conjuntos de copia de seguridad siguientes (10, 11 y 12) en el dispositivo MyDatabaseBackups. Tras restaurar la última copia de seguridad de registros se restaura la base de datos. Tenga en cuenta que en RESTORE DATABASE hay dos tipos de opciones FILE. Las opciones FILE que preceden al nombre del dispositivo de copia de seguridad especifican los nombres de archivos lógicos de los archivos de base de datos que se van a restaurar desde el conjunto de copia de seguridad; por ejemplo, FILE = 'MyDatabase_data_1'. Este conjunto de copia de seguridad no es la primera copia de seguridad de la base de datos en el conjunto de medios; por ello, su posición en el conjunto de medios se indica mediante la opción FILE de la cláusula WITH, FILE=9. RESTORE DATABASE MyDatabase FILE = 'MyDatabase_data_1', FILE = 'MyDatabase_data_2', FILEGROUP = 'new_customers' FROM MyDatabaseBackups WITH FILE = 9, NORECOVERY; GO -- Restore the log backups. RESTORE LOG MyDatabase FROM MyDatabaseBackups
  • 53. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 53 WITH FILE = 10, NORECOVERY; GO RESTORE LOG MyDatabase FROM MyDatabaseBackups WITH FILE = 11, NORECOVERY; GO RESTORE LOG MyDatabase FROM MyDatabaseBackups WITH FILE = 12, NORECOVERY; GO --Recover the database: RESTORE DATABASE MyDatabase WITH RECOVERY; GO Recuperando la BD desde el management Especificamos el origen del archivo de Backup, seleccionamos “From Device”
  • 54. Universidad Nacional de Ingeniería Pág. 54 danielramoscastaneda@hotmail.com SQL Administración Hacemos clic sobre el botón “Add” para especificar la ubicación del archivo de Backup. Seleccionamos el archivo.
  • 55. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 55 Confirmamos la ubicación del archivo a recuperar. Indicamos el nombre de la Base de Datos a recuperar.
  • 56. Universidad Nacional de Ingeniería Pág. 56 danielramoscastaneda@hotmail.com SQL Administración Verificamos la ubicación de los archivos de mdf, ndf y ldf. Una vez completado, aparecerá el siguiente mensaje.
  • 57. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 57 C CA AP PI IT TU UL LO O 4 4  Administración de la Seguridad  Modos de autenticidad  Creación de Usuarios  Uso de Credenciales y Permisos
  • 58. Universidad Nacional de Ingeniería Pág. 58 danielramoscastaneda@hotmail.com SQL Administración 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ón primordial cuando se diseña y administra un entorno de base de datos, aquí, daremos a conocer los componentes fundamentales 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é son las entidades de seguridad? SQL Server 2008 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 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, que son 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). 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
  • 59. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 59 se muestran en la tabla siguiente. Nivel Entidades de seguridad Windows Cuenta de usuario local de Windows Cuenta de usuario de dominio de Windows Grupo de Windows SQL Server Inicio de sesión de SQL Server Función de SQL Server Base de datos Usuario de la base de datos Función de la base de datos Función de aplicación Grupo de bases de datos (sólo para 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 de base de datos. ¿Qué son los protegibles? Los objetos cuyo acceso está regulado por el sistema de autorización de SQL Server 2008 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. Los protegibles se organizan en jerarquías anidadas 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 incluyen archivos y claves del Registro. El ámbito de servidor Los protegibles que contiene el ámbito de servidor incluyen: ■ Inicios de sesión ■ Extremos ■ Bases de datos
  • 60. Universidad Nacional de Ingeniería Pág. 60 danielramoscastaneda@hotmail.com SQL Administración El ámbito de base de datos 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 ■ Eventos DDL ■ Esquemas El ámbito de esquema 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 inicios de sesión, lo que lo convierte en un protegible. Permisos de SQL Server 2008 SQL Server 2008 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.
  • 61. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 61 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 de SQL Server tienen permisos asociados que pueden otorgarse a cada entidad de seguridad. Ejemplo de permiso La única manera de que una entidad de seguridad pueda tener acceso a un recurso en un sistema de SQL Server es recibir 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 los permisos usando el Explorador de objetos en SQL Server Management Studio o mediante la ejecución de instrucciones GRANT, REVOKE 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 Determinados permisos en SQL Server 2008 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 hereda automáticamente el permiso SELECT en todos los objetos del esquema. ■ 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 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 la entidad de seguridad, y… ■ El permiso no se ha denegado 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 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é son los modos de autenticación de SQL Server? SQL Server 2008 puede configurarse para usar uno de los dos modos de autenticación siguientes:
  • 62. Universidad Nacional de Ingeniería Pág. 62 danielramoscastaneda@hotmail.com SQL Administración Modo de autenticación de Windows. 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, el símbolo de acceso 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 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. Además, SQL Server mantiene inicios de sesión 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 a Windows. El modo de autenticación de Windows y SQL Server se conoce a veces como modo mixto. Nota 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. CUANDO USAR EL MODO DE AUTENTICACIÓN WINDOWS 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 la autenticación de SQL Server, como por ejemplo: Le permite agregar grupos de usuarios a SQL Server mediante la agregación de una cuenta de inicio de sesión única. Permite a los usuarios un rápido acceso a SQL Server sin tener que recordar otra cuenta de inicio de sesión y contraseña.
  • 63. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 63 CUANDO USAR EL MODO DE AUTENTICACIÓN SQL 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ímbolo de acceso de usuario de Windows, lo que hace más segura la autenticación de Windows. 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ón de cada uno de los 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ás vulnerable ante cualquier ataque. Importante 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 funcionan las directivas de contraseñas En Microsoft Windows Server™ 2003 y 2008, puede usar la Directiva de grupo para definir las configuraciones de usuarios y equipos para grupos de usuarios y equipos. Puede usar la Directiva de grupo para configurar muchas opciones, incluidas las directivas de cuentas. Las directivas de contraseñas son útiles para garantizar que todas las contraseñas sean lo suficientemente complejas y que se cambien periódicamente para maximizar la seguridad y evitar el acceso no autorizado. En SQL Server 2008, las directivas de cuentas locales o de dominio se pueden aplicar a inicios de sesión de SQL, así como a los inicios de sesión de Windows, cuando SQL Server se instala en equipos que usan Windows Server 2003 / 2008 o posterior.
  • 64. Universidad Nacional de Ingeniería Pág. 64 danielramoscastaneda@hotmail.com SQL Administración Directivas de complejidad de contraseñas Las directivas de complejidad de contraseñas están diseñadas para disuadir los ataques de fuerza bruta por medio del aumento del número de contraseñas posibles. Cuando se aplica la directiva de complejidad de contraseñas, las nuevas contraseñas deben cumplir los requisitos de directiva establecidos por la directiva de contraseñas de Windows. Un ejemplo de este tipo de directiva sería: La contraseña no contiene todo o parte del nombre de cuenta del usuario. Una parte de un nombre de cuenta se define como tres o más caracteres alfanuméricos consecutivos delimitados en ambos extremos por un espacio en blanco (espacio, tabulación, retorno, etc.) o por cualquiera de los caracteres siguientes: , . - _ # La contraseña debe tener una longitud de siete caracteres como mínimo. La contraseña contiene caracteres de tres de las cuatro categorías siguientes: Abecedario inglés en mayúsculas (de la A a la Z) Abecedario inglés en minúsculas (de la a a la z) Dígitos en base decimal (del 0 al 9) Caracteres no alfanuméricos (por ejemplo: !, $, #, o %) Directiva de caducidad de contraseña Las directivas de caducidad de contraseñas se usan para administrar el tiempo de vida de una contraseña. Cuando se usa una directiva de caducidad de contraseñas, se recuerda a los usuarios que cambien las contraseñas anteriores y las cuentas con contraseñas caducadas se deshabilitan. Cómo administrar inicios de sesión de SQL Server 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 Transact-SQL CREATE LOGIN, ALTER LOGIN y DROP LOGIN.
  • 65. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 65 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. CREANDO 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: CREATE LOGIN [SERVERXVendedor] 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 2008 proporciona restricciones de directiva similares para inicios de sesión de SQL cuando está instalado en Windows Server 2003/2008. 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 comportamiento mediante las opciones de la instrucción CREATE LOGIN mostradas en la tabla siguiente. Opción Descripción HASHEDloca Especifica que la contraseña ya se ha comprobado aleatoriamente. Si no está especificada, la cadena se comprobará aleatoriamente antes del almacenamiento. MUST_CHANGE Solicita a un inicio de sesión que cambie su contraseña la primera vez que se conecta. Si se especifica esta opción,
  • 66. Universidad Nacional de Ingeniería Pág. 66 danielramoscastaneda@hotmail.com SQL Administración CHECK_EXPIRATION y CHECK_POLICY deben establecerse en ON. CHECK_EXPIRATION Cuando se encuentra en ON (el valor predeterminado), esta opción especifica que la directiva de caducidad de contraseñas de Windows Server 2003/2008 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. CHECK_POLICY Cuando se encuentra en ON (el valor predeterminado), esta directiva especifica que la directiva de complejidad de contraseñas de Windows Server 2003/2008 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 definida 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/2008 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. 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. MODIFICANDO INICIOS DE SESIÓN Puede modificar un inicio de sesión viendo sus propiedades en el Explorador 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 Eliminando inicios de sesión Puede eliminar un inicio de sesión haciendo clic sobre él con el botón secundario en el Explorador de objetos y haciendo clic a continuación en Eliminar, o ejecutando la instrucción DROP LOGIN como se muestra en el ejemplo siguiente: DROP LOGIN dRamos ¿Qué son las funciones fijas de servidor? Las funciones proporcionan un medio de agrupar usuarios en una sola unidad a la que se pueden aplicar permisos.
  • 67. Facultad de Ingeniería Industrial y de Sistemas SQL Administración danielramoscastaneda@hotmail.com Pág. 67 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 de forma independiente a las bases de datos de usuarios 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, 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. Asignar una cuenta de inicio de sesión a una función fija de servidor Puede usar las Propiedades de inicio de sesión de SQL Server en SQL Server Management Studio o el procedimiento almacenado del sistema sp_addsrvrolemember para agregar una cuenta de inicio de sesión como un miembro de una función fija de servidor. Sólo los miembros de funciones fijas de servidor pueden ejecutar el procedimiento almacenado del sistema sp_addsrvrolemember. Al agregar una cuenta de inicio de sesión a una función de servidor, la cuenta consigue los permisos asociados a la función de servidor. Para asignar cuentas de inicio de sesión a funciones fijas de servidor, tenga en cuenta los puntos siguientes: No puede agregar, modificar o eliminar funciones fijas de servidor. Cualquier miembro de una función fija de servidor puede agregar otras cuentas de inicio de sesión a esa función. El procedimiento almacenado del sistema sp_addsrvrolemember no puede ejecutarse dentro de una transacción definida por el usuario. También puede usar el procedimiento almacenado del sistema sp_dropsrvrolemember para eliminar un miembro de una función fija de servidor