Está en la página 1de 41

Disaster Prevention and Recovery '' Hay dos cosas que todo administrador de base de datos no se puede vivir

sin l. El primero es una copia de seguridad eficaz y plan de restauracin . El segundo es un r'esum'e hasta al da . Si usted tiene la primera , puede que nunca necesidad de la segunda , pero si usted no tiene el primero , tarde o temprano la r'esum'e ser fundamental para su futuro empleo. '' Puedo dar ese discurso a cada grupo de los administradores de bases de datos que la direccin y me dirijo a muchos de ellos . Es un hecho que los discos fallan y los datos se corrompe . Probablemente todos hemos sufrido algn tipo de prdida de datos que se podran haber evitado si los datos han sido respaldados correctamente . A medida que la persona responsable de la estabilidad y la integridad de los datos de la organizacin , el administrador de base de datos debe ser diligente y meticuloso con la planificacin de una estrategia de copia de seguridad de base de datos para que en caso de fallo del equipo , errores de los usuarios , o corrupcin de datos intencional, la base de datos puede ser devuelto para atender en lo ms breve tiempo posible con la mnima prdida de datos.

Este captulo trata sobre la mecnica de la copia de seguridad y recuperacin de bases de datos , con un poco de estrategia tirado en una buena medida. Voy a tratar de no dar recomendaciones especficas desde ninguna recomendacin de molde funciona para cada situacin. Le corresponde a usted como el administrador de la base para examinar todas las posibles operaciones de respaldo y restauracin y llegar a un plan que evite la prdida de datos y reducir al mnimo el tiempo de inactividad . Hay personas que dependen de usted, y la propia organizacin para la que trabaja puede tener xito o fracasar a causa de sus esfuerzos. Es una responsabilidad muy pesada de llevar , pero las aplicaciones a medida que ms y ms de la lnea de negocio se basa en la parte superior de SQL Server, es una responsabilidad muy real. As que toma una respiracin profunda, y aprender todo lo que pueda acerca de la prevencin y recuperacin para asegurar que usted siempre es el hroe y no la persona que la culpa de la prdida de datos de desastres.

Captulo Preparacin

La base de datos AdventureWorks2008 es una base de datos de muestra bastante grande. Para reducir la cantidad de tiempo y espacio en disco necesario para practicar los ejemplos de este captulo, vamos a ir primero a crear una versin ms pequea de AdventureWorks2008. La siguiente secuencia de comandos crea una base de datos llamada Smallworks formado por un grupo de archivos principal y dos grupos de archivos adicionales con el archivo de datos de cada uno. A continuacin, crea una tabla en cada grupo de archivos, que se llena con los datos de la base de datos AdventureWorks2008. La ltima accin de la escritura es establecer el atributo de slo lectura en el segundo grupo de archivos definido por el usuario. El script supone la existencia de la ruta C: \ SQLData. CREATE DATABASE SmallWorks ON PRIMARY ( NAME = SmallWorksPrimary , FILENAME = C:\SQLData\SmallWorks.mdf , SIZE = 10MB , FILEGROWTH = 20% , MAXSIZE = 50MB) , FILEGROUP SWUserData1 ( NAME = SmallWorksData1 , FILENAME = C:\SQLData\SmallWorksData1.ndf , SIZE = 10MB , FILEGROWTH = 20% , MAXSIZE = 50MB) , FILEGROUP SWUserData2 ( NAME = SmallWorksData2 , FILENAME = C:\SQLData\SmallWorksData2.ndf , SIZE = 10MB , FILEGROWTH = 20% , MAXSIZE = 50MB) LOG ON ( NAME = SmallWorks_log , FILENAME = C:\SQLData\SmallWorks_log.ldf , SIZE = 10MB , FILEGROWTH = 10% , MAXSIZE = 20MB) GO USE SmallWorks GO ALTER DATABASE SmallWorks MODIFY FILEGROUP SWUserData1 DEFAULT GO CREATE TABLE dbo.Person( PersonID int NOT NULL , FirstName varchar(50) NOT NULL , MiddleName varchar(50) NULL

, LastName varchar(50) NOT NULL , EmailAddress nvarchar(50) NULL ) ON SWUserData1 CREATE TABLE dbo.Product( ProductID int NOT NULL , ProductName varchar(75) NOT NULL , ProductNumber nvarchar(25) NOT NULL , StandardCost money NOT NULL , ListPrice money NOT NULL ) ON SWUserData2 INSERT dbo.Person (PersonID, FirstName, MiddleName, LastName, EmailAddress) SELECT DISTINCT TOP 5000 P.BusinessEntityID , P.FirstName , P.MiddleName , P.LastName , LOWER(P.FirstName + . + P.LastName + @adventureworks.com) FROM AdventureWorks2008.Person.Person P INNER JOIN AdventureWorks2008.Person.EmailAddress E ON P.BusinessEntityID = P.BusinessEntityID WHERE P.FirstName NOT LIKE %.% ORDER BY P.BusinessEntityID INSERT dbo.Product (ProductID, ProductName, ProductNumber, StandardCost, ListPrice) SELECT ProductID , Name , ProductNumber , StandardCost , ListPrice FROM AdventureWorks2008.Production.Product ALTER DATABASE SmallWorks MODIFY FILEGROUP SWUserData2 READONLY

Modelos de recuperacin de bases de datos

SQL Server tiene tres posibles modelos de recuperacin , sin embargo , slo dos son para el uso regular - los modelos de recuperacin simple y completa . El tercer modelo de recuperacin de registro masivo , est diseado para ser un complemento al modelo de recuperacin completa . Cada modelo de recuperacin tiene sus ventajas y desventajas . Es absolutamente crtico que usted tiene una

comprensin completa de cada modelo para que pueda tomar una decisin informada y adecuada en cuanto a cul es el modelo de recuperacin de cada base de datos para operar pulg modelos de recuperacin de cambiar el comportamiento del registro de transacciones , lo que las copias de seguridad se pueden realizar , y cmo se recuperan los datos .

Modelo de recuperacin completa

En el modelo de recuperacin completa , toda la actividad que afecta a la base de datos se registra en el registro de transacciones de una u otra manera. Algunos eventos se registran mnimamente , al igual que el comando TRUNCATE TABLE , que borra completamente el contenido de una tabla. Cuando se ejecuta el comando TRUNCATE TABLE , SQL Server registra slo el de- asignacin de las pginas de datos afectados por el truncamiento. Sin embargo , toda la actividad de base de datos normal es registra por completo , incluyendo la reconstruccin de ndices , la copia masiva , SELECT INTO, BULK INSERT y actualizaciones BLOB ( Binary Large Object ) . La ventaja de este registro completo es que cada transaccin puede ser recuperado en caso de un fallo . Usted nunca tendr que preocuparse acerca de una transaccin perdido debido a la prdida de un archivo de datos. Con la prdida del registro real de la transaccin , todas las transacciones desde el ltimo punto de control se perderan .

La desventaja del modelo de recuperacin completa es la misma que la ventaja : Casi todo lo que afecta a la base de datos se registra por completo . Como resultado , el registro de transacciones se puede llenar muy rpidamente . Si se establece en crecimiento automtico , sino que tambin puede ser muy grande, muy rpidamente. Cuando la base de datos se establece en el modelo de recuperacin completa , es imperativo que un plan efectivo para realizar copias de seguridad del registro de transacciones en una base regular ser desarrollado e implementado . Copia de seguridad del registro de transacciones borra de todas las transacciones de edad y deja espacio para los nuevos. En el modelo de recuperacin completa, el registro de transacciones contiene un registro de todas las modificaciones realizadas en la base de datos desde la ltima copia de seguridad Registro de eventos. Se puede utilizar para recuperar dichas operaciones, como se describe ms adelante en este captulo

. Registro masivo modelo de recuperacin

El modelo de recuperacin de registro masivo, como se ha sealado anteriormente, es un modelo de complemento al modelo de recuperacin completa. Hay momentos en que el comportamiento de la tala completa del modelo de recuperacin completa puede ser perjudicial para el rendimiento y causar inaceptable archivo log-crecimiento. En estos casos, la base de datos se puede configurar para iniciar mnimamente operaciones masivas cambiando el modelo de recuperacin de registro masivo. En el modelo de recuperacin de registro masivo, las siguientes operaciones de base de datos se registran mnimamente: Index Creation Index Rebuild Bulk Copy operations BULK INSERT SELECT INTO BLOB operations El registro mnimo significa que las operaciones citadas se registran como ha ocurrido , pero las filas individuales afectados no se ha autentificado . Adems del registro de la operacin que se est conectado , un registro de las extensiones fsicas asignadas o afectadas por la operacin se registra en el registro de transacciones . Durante el prximo evento BACKUP LOG , las extensiones fsicas afectadas se copian en la copia de seguridad del registro. La recuperacin por medio de registros mantiene el registro de menores , acceda mnimamente las operaciones intensivas de datos , pero las copias de seguridad de registro en realidad puede ser ms grande. Debido a que las copias de seguridad de registro se basan en los datos fsicos son intacta durante la copia de seguridad de registro, si los discos estn daados o no est disponible , la copia de seguridad de registro fallar.

En el registro masivo de recuperacin, el registro de transacciones contiene un registro de todas las modificaciones hechas totalmente registrados a la base de datos y la identificacin de las extensiones modificadas modificados por las operaciones mnimamente registradas desde la ltima copia de seguridad Registro de eventos. Al igual que el registro de transacciones en el modelo de recuperacin

completa , el registro de transacciones en el registro masivo de recuperacin est disponible para restaurar las operaciones en caso de un fallo de base de datos.

Modelo de recuperacin simple

En el modelo de recuperacin simple , la parte inactiva del registro se trunca problemas cada vez que un punto de control de SQL Server . Como se explica en el captulo 4 , puntos de control son emitidas peridicamente por SQL Server para mantener la cantidad de tiempo necesario para la recuperacin de una base de datos a un mnimo. La parte inactiva del registro es esencialmente la parte del registro de la transaccin abierto ms antiguo al final del registro .

El modelo de recuperacin simple tiene la ventaja de reducir la carga administrativa de la gestin del registro de transacciones. Dado que la parte inactiva del registro se elimina bsicamente despus de cada punto de control , el registro , si se planifica adecuadamente , nunca debera crecer y nunca debera necesitar ser administrado. Sin embargo , el registro de transacciones no se puede hacer copia de seguridad y se utiliza para la recuperacin de datos , ya que no tiene un registro completo de todas las transacciones que han modificado la base de datos . 2008 Copia de seguridad de base de datos SQL Server

Durante aos he dicho que la mejor parte de las copias de seguridad de SQL Server nativos es el precio del software de copia de seguridad , que es gratuito . Aparte del precio , sin embargo , las copias de seguridad de SQL Server nativos ofrecieron poco en el rea de desempeo y flexibilidad que los administradores de bases de datos ms empresas necesitan . Como resultado de esta deficiencia , varios proveedores de software de terceros creados software de copia de seguridad excelente que realizar copias de seguridad de bases de datos SQL Server hasta 10 veces ms rpido que la utilidad nativa , mientras que la compresin y el cifrado de la copia de seguridad al mismo tiempo. Con el lanzamiento de SQL Server 2008, Microsoft ha mejorado notablemente el sistema de copia de seguridad nativa de modo que ahora aade nuevas funcionalidades muy interesantes a las rutinas de copia de seguridad de base de datos . La primera es que SQL Server 2008 copias de seguridad son ms rpidas que las de

ediciones anteriores. La velocidad se hace an ms impresionante por el hecho de que SQL Server 2008 tambin proporciona la capacidad de comprimir las copias de seguridad y copias de seguridad comprimidas que son incluso ms rpido que las copias de seguridad no comprimidas . En mi copia de SQL Server 2008, una copia de seguridad de la base de datos AdventureWorks2008 tarda 6 segundos cuando el uso de la compresin y 9 segundos fuera. SQL Server 2008 proporciona la capacidad de cifrar las copias de seguridad tambin.

Copias de seguridad de SQL Server 2008 se pueden realizar durante la actividad normal de la base de datos . No hay necesidad de desconectar a los usuarios o apagar cualquier servicio . Las copias de seguridad pueden ser enviados en disco o cinta . Para enviar las copias de seguridad en cinta, el dispositivo de cinta debe estar conectada localmente al servidor de base de datos. Esta limitacin puede superarse mediante el uso de productos de terceros o de montar el dispositivo de cinta en una SAN que presenta la unidad como un disco lgico dispositivo .

Destinos discos se identifican por una Convencin de nomenclatura ubicacin fsica o universal ( UNC ), como ilustran los siguientes ejemplos : --Full database backup of SmallWorks to a drive location BACKUP DATABASE SmallWorks TO DISK = D:\SQLBackups\FullSmallWorks.BAK WITH DESCRIPTION = SmallWorks DB Full Backup --Full database backup of SmallWorks to a UNC location BACKUP DATABASE SmallWorks TO DISK = \\AUGHTEIGHT\SQLBackups\FullSmallWorks.BAK WITH DESCRIPTION = SmallWorks DB Full Backup

Dispositivos de copia de seguridad

Ubicaciones de cinta o disco se pueden asignar a un dispositivo de copia de seguridad. Un dispositivo de copia de seguridad es un alias en el disco o la ubicacin de la cinta. La nica ventaja real de los dispositivos de copia de seguridad es que hacen la sintaxis del comando de copia de seguridad simple. Sin embargo, ya que los dispositivos de copia de seguridad se crean generalmente una vez para llevar a cabo muchas copias de seguridad, el nombre del dispositivo ser tpicamente menos descriptiva que normalmente se desea.

El siguiente ejemplo muestra cmo crear un dispositivo de copia de seguridad y copia de seguridad de la base de datos principal a la misma:

--Create a device for backups of the Master database sp_addumpdevice Disk , MasterDBBackups , D:\SQLBackups\masterDB.Backups.BAK --Backup the Master database to the new device BACKUP DATABASE Master TO MasterDBBackups WITH DESCRIPTION = Master DB Full Backup Dispositivos de copia de seguridad tambin se pueden crear grficamente mediante la ampliacin del nodo de objetos de servidor en el Explorador de objetos de SQL Server Management Studio, haga clic en Dispositivos de copia de seguridad'','' y haciendo clic en'' Nuevo dispositivo de copia de seguridad.''

Sin importar el tipo de copia de seguridad ejecutada, SQL Server realiza las siguientes acciones: registra la instruccin BACKUP en el registro de transacciones. emite un punto de control causando todas las pginas de bfer sucios pendientes se escriban en el disco. Escribe todas las pginas de datos especificados por la completa, diferencial, archivo o de copia de seguridad FILEGROUP opciones a los medios de copia de seguridad. escribe todas las modificaciones de datos registrados en el diario de las transacciones que tuvieron lugar durante la copia de seguridad la media de respaldo. Registros de la realizacin de la copia de seguridad del registro de transacciones. Copia de seguridad de la base de datos principal, ejecute el comando siguiente en SQL Server Management Studio:

--Full database backup of the Master database BACKUP DATABASE Master TO DISK = D:\SQLBackups\FullMaster.BAK WITH DESCRIPTION = MASTER DB FULL Backup El script realiza una copia de seguridad completa de la base de datos principal. Se supone que tiene un volumen de'' D'' y una carpeta llamada SQLBackups. El comando backup crear archivos designados, pero no va a crear carpetas.

Las bases de datos tambin se pueden copiar mediante las herramientas grficas proporcionadas con Management Studio. Para lograr los mismos resultados que el guin anterior, siga estos pasos:

1. Ampliar las bases de datos y luego los nodos del sistema de bases de datos en el Explorador de objetos de administracin Studio. 2. Haga clic en la base de datos principal y haga clic en Tareas? Copia de seguridad para iniciar la copia de seguridad de base de datos de dilogo (Figura 9-1). 3. Haga clic en el botn Eliminar para eliminar la ubicacin de copia de seguridad predeterminada. 4. Haga clic en el botn Agregar para especificar un nuevo destino para la copia de seguridad de base de datos. 5. En el cuadro de dilogo Seleccionar destino de copia de seguridad, escriba un nuevo destino para la copia de seguridad, tales como D: \ SQLBackups \ master.bak. 6. Haga clic en Aceptar para iniciar la copia de seguridad.

Figure 9-1: The Backup Database dialog.

SQL Server 2008 Tipos de copia de seguridad

SQL Server 2008 es compatible con varios tipos de copia de seguridad que se pueden combinar o utilizar de forma independiente para crear estrategias de copia de seguridad. En esta seccin, vamos a explorar los diferentes tipos y , a continuacin, en la siguiente seccin , vamos a examinar las opciones de copia de seguridad y la forma de combinar los tipos de copia de seguridad en una estrategia de copia de seguridad eficaces. La mayora de las copias de seguridad se realizan de la misma manera con las herramientas grficas y la interfaz es muy intuitiva. Con esto en mente, en los siguientes ejemplos , cada tipo de copia de seguridad slo se acompaa de la correspondiente Transact -SQL a utilizar para realizar la copia de seguridad.

Copia de seguridad completa

Probablemente la forma ms comn y fcil de implementar copias de seguridad es la copia de seguridad completa . La copia de seguridad completa simplemente una copia de seguridad de todos los datos en la base de datos y los registros de todas las ubicaciones de los archivos de base de datos . SQL Server registra el comienzo de una base de datos de copia de seguridad completa en el registro de transacciones y luego registra los cambios realizados en la base de datos para la duracin de la copia de seguridad en el registro de transacciones . Cuando todas las pginas de datos de los archivos de datos de bases de datos han sido transferidos a los medios de copia de seguridad , SQL Server registra la finalizacin de la copia de seguridad y transfiere la parte del registro de transacciones que se produjeron durante la copia de seguridad de los medios de copia de seguridad. Copias de seguridad completas se pueden utilizar en cualquier modelo de recuperacin.

La ventaja de la copia de seguridad completa es que es excepcionalmente simple. Sin embargo, los respaldos completos tardan ms que otros mtodos de copia de

seguridad y suelen dar lugar a los mismos datos sin cambiar la copia de seguridad una y otra vez junto con los datos nuevos y actualizados. --Full database backup of SmallWorks BACKUP DATABASE SmallWorks TO DISK = D:\SQLBackups\SmallWorksFull.BAK WITH DESCRIPTION = SmallWorks FULL Backup

Copia de seguridad diferencial

Copias de seguridad diferenciales se utilizan para copia de seguridad slo los datos que han cambiado desde la ltima copia de seguridad completa. Al igual que la copia de seguridad completa, la copia de seguridad diferencial tambin se compone de la parte del registro de transacciones de base de datos que contiene las modificaciones que se produjeron durante la copia de seguridad. Debido a las copias de seguridad diferenciales slo contienen las extensiones de los archivos de datos que han cambiado desde la ltima copia de seguridad completa, toman menos tiempo para ejecutar que las copias de seguridad completas. Sin embargo, cada copia de seguridad diferencial consecutivo ser en la mayora de los casos a ser cada vez ms grandes. Si se modifica slo 1 byte de una medida de 64 KB, la copia de seguridad diferencial se copia de seguridad de toda la extensin. La copia de seguridad diferencial est disponible sin importar el modelo de recuperacin de base de datos y requiere una copia de seguridad completa de base. --Differential database backup of SmallWorks BACKUP DATABASE SmallWorks TO DISK = D:\SQLBackups\SmallWorksDiff.BAK WITH DIFFERENTIAL, DESCRIPTION = SmallWorks Differential Backup

File/Filegroup Backup
Cuando una base de datos se divide en varios archivos y grupos de archivos, estos archivos y grupos de archivos se pueden copiar de forma individual. Este tipo de copia de seguridad es particularmente til para bases de datos muy grandes. Grupo de archivos de copias de seguridad de archivos y copias de seguridad funcionan de manera similar como completas y diferenciales en que se agregan las pginas de datos del archivo y, a continuacin todas las transacciones realizadas con el archivo o grupo de archivos de los medios de copia de seguridad.

--Backup of the "SWUserData1" User-Defined Filegroup BACKUP DATABASE SmallWorks FILEGROUP = SWUserData1 TO DISK = D:\SQLBackups\SmallWorksUserData1FG.BAK WITH DESCRIPTION = SmallWorks SWUserData1 Filegroup Backup --Backup of the SmallWorks data file "SmallWorksData1" --The logical name of the file **NOT the physical file name** BACKUP DATABASE SmallWorks FILE = SmallWorksData1 TO DISK = D:\SQLBackups\SmallWorksData1File.BAK WITH DESCRIPTION = SmallWorks UserData1 File Backup File/Filegroup with Differential Una opcin adicional disponible al realizar copias de seguridad de archivos o grupos de archivos es la capacidad de realizar un archivo de copia de seguridad diferencial o grupo de archivos. Esta opcin funciona exactamente igual que la copia de seguridad diferencial tpico, slo los cambios en el archivo o grupo de archivos desde la ltima copia de seguridad del archivo completo o grupo de archivos son capturados, as como cualquier cambio en los archivos durante la copia de seguridad. --Differential Filegroup Backup of the "SWUserData1" User-Defined Filegroup BACKUP DATABASE SmallWorks FILEGROUP = SWUserData1 TO DISK = D:\SQLBackups\SmallWorksUserData1FGDIFF.BAK WITH DIFFERENTIAL, DESCRIPTION = SmallWorks Filegroup Differential Backup Archivo y grupo de archivos de copias de seguridad slo estn disponibles si la base de datos en el modelo de recuperacin completa o de registro masivo, con una excepcin. Si un grupo de archivos est marcado como de slo lectura y de la base de datos est configurado en el modelo de recuperacin simple, entonces ese grupo de archivos puede ser respaldada.

Transaction Log Backup


En los modelos de recuperacin de registro masivo o completo, es imperativo que las copias de seguridad peridicas del registro de transacciones se realizan tanto para mantener el tamao del registro de transacciones dentro de lmites razonables y permitir la recuperacin de los datos con la menor cantidad de prdida de datos.

Copias de seguridad del registro de transacciones se dividen en tres tipos: las copias de seguridad puros troncos, Bulk copias de seguridad y copias de seguridad del final del registro.

Seguridad del Registro Pure - Una copia de seguridad Iniciar Pure contiene slo las transacciones y se completa cuando la base de datos en el modelo de recuperacin completa o el modelo de recuperacin de registro masivo, pero no operaciones masivas se han ejecutado. --Pure or Bulk Log Backup of SmallWorks BACKUP LOG SmallWorks TO DISK = D:\SQLBackups\SmallWorksLog.TRN WITH DESCRIPTION = SmallWorks Log Backup

Granel Backup Log - copias de seguridad de registro a granel contiene tanto los datos transaccionales y las extensiones fsicas modificadas por las operaciones a granel, mientras que la base de datos estaba en recuperacin de registro masivo.

Tail Log Backup - copia de seguridad del final del registro se completan cuando la base de datos est en completa o de registro masivo de recuperacin antes de la restauracin de la base de datos para capturar todos los registros de transacciones que an no han sido respaldados. Es posible en algunos casos para ejecutar una copia de seguridad del final del registro incluso si la base de datos est daado. --Tail Log Backup of SmallWorks BACKUP LOG SmallWorks TO DISK = D:\SQLBackups\SmallWorksTailLog.TRN WITH NO_TRUNCATE, DESCRIPTION = SmallWorks Tail Log Backup

Partial Backup
Una copia de seguridad de base de datos parcial consiste en el grupo de archivos principal, Lectura Escritura grupos de archivos, y cualquier grupo de archivos de

slo lectura especifica. La idea detrs de la copia de seguridad parcial es que el grupo de archivos principal, que contiene toda la informacin necesaria para que la base de datos en lnea, y todos los grupos de archivos sujetos a modificaciones puede ser respaldada juntos, dejando a los grupos de archivos que no cambian de una copia de seguridad por separado y no tan a menudo, el ahorro de tiempo y espacio en los medios de copia de seguridad. BACKUP DATABASE SmallWorks READ_WRITE_FILEGROUPS TO DISK = D:\SQLBackups\SmallWorksPartial.BAK WITH DESCRIPTION = Partial Backup of all Read/Write filegroups

Copy Only Backup


Copiar slo las copias de seguridad se pueden realizar en los archivos de bases de datos y registros de transacciones para crear una copia de seguridad sin afectar la cadena de copias de seguridad necesarias para restaurar una base de datos. Son esencialmente las copias de seguridad no registradas que puedan utilizarse fuera del entorno de mantenimiento. Por ejemplo, si se necesita una copia de la base de datos para la prueba y el desarrollo, de una copia de copia de seguridad slo se puede realizar a fin de no romper la cadena de copia de seguridad. Cadenas de copia de seguridad se discuten en el'''' restaurar bases de datos ms adelante en este captulo. BACKUP DATABASE SmallWorks TO DISK = D:\SQLData\SmallWorksCopyOnly.BAK WITH COPY_ONLY, DESCRIPTION = Copy only backup

Backup Options
Como se ha descrito anteriormente, las copias de seguridad se pueden enviar a un disco o de cinta de destino. Cuando enviado a estos destinos, la eleccin puede hacerse para comprimir la base de datos de copia de seguridad. Otra posibilidad para los destinos de copia de seguridad es el envo de las copias de seguridad a varios destinos al mismo tiempo. Las mltiples destinos se pueden configurar como una raya de la copia de seguridad o un espejo.

Backup Stripe

Trazado de una copia de seguridad a travs de mltiples dispositivos puede ahorrar tiempo en el proceso de copia de seguridad desde mltiples dispositivos fsicos se escriben de forma simultnea. Para crear una franja de seguridad, slo tiene que aadir varios destinos para el comando de copia de seguridad como se muestra en el siguiente cdigo: BACKUP DATABASE SmallWorks TO DISK=D:\StripedBackupsA\SmallWorksStripe1.bak , DISK=E:\StripedBackupsB\SmallWorksStripe2.bak , DISK=F:\StripedBackupsC\SmallWorksStripe3.bak WITH DESCRIPTION = Striped Backup

Una vez que se ha creado un conjunto de bandas, cada archivo slo aceptar copias de seguridad que incluyen tambin todos los miembros de la banda. Los tres archivos son ahora un conjunto formado por tres miembros de la familia. Con el fin de enviar una copia de seguridad de uno de los miembros, se debe especificar la opcin de formato. Aunque la copia de seguridad de rayas puede mejorar el rendimiento de la copia de seguridad, la prdida o corrupcin de cualquier archivo en la banda se traducir en una prdida total de la copia de seguridad.

Mirrored Backup
Recib una llamada a altas horas de la noche de un colega que se haba apoderado de mi posicin despus de haber trasladado a otro puesto de trabajo. Estaba desesperado. Me explic que su servidor de base de datos principal haba sufrido una falla catastrfica. Haban reconstruido el servidor y se encontraban en el proceso de restauracin de la cinta cuando la unidad de cinta inexplicablemente decidi devorar la cinta y la unidad redundante asent estaba fuera de servicio. Escuch atentamente su historia, pero al final slo pude responder con'' Si usted tiene otra copia de la cinta, simplemente pongo una unidad de cinta diferente y restaurar desde la copia. Si usted no tiene otra copia, restaurar desde la copia ms reciente que tienen y actualizar su r'esum'e''.

Les digo a todas las clases de administracin de SQL Server que enseo esta historia. Lo hago para poner de relieve la importancia de tener copias de seguridad

redundantes. Es demasiado fcil sentirse seguro y con la certeza de que son regularmente copias de seguridad de sus datos. Sin embargo, las copias de seguridad son tan vulnerables como los datos que estn ostensiblemente protegiendo. Tengo encounteredmany organizaciones que no soaran de almacenar sus datos en otra cosa que las matrices redundantes, sin embargo, copia de seguridad de sus datos crticos a un nico dispositivo y no hago copias de la misma.

En el pasado, la creacin de copias de seguridad redundantes significaba respaldo de la base de datos y, a continuacin copias de seguridad de las copias de seguridad o el uso de una solucin de hardware que refleja las copias de seguridad, mientras que se estn creando. SQL Server 2008 proporciona la capacidad integrada para reflejar las copias de seguridad de bases de datos.

Copias de seguridad duplicadas no son compatibles a travs de las herramientas visuales. El cdigo siguiente muestra cmo realizar una copia de una base de datos a un destino y el espejo toda la copia de seguridad a otro destino al mismo tiempo. La opcin WITH formato es necesario para crear un nuevo conjunto de copia espejo. BACKUP DATABASE SmallWorks TO DISK=D:\MirroredBackupsA\SmallWorksMirror1.bak MIRROR TO DISK=E:\MirroredBackupsB\SmallWorksMirror2.bak WITH FORMAT, DESCRIPTION = Mirrored Backup

Compressed Backup
Como mencion anteriormente, las copias de seguridad comprimidas en realidad son ms rpidas que las copias de seguridad no comprimidas. Ellos tambin se restablecen ms rpido. Sin embargo, esta velocidad no viene sin un costo. Copias de seguridad comprimidas consumen muchos ms recursos de CPU que las copias de seguridad no comprimidas. Si el servidor de base de datos ya est sobrecargado de trabajo en el rea de uso de la CPU, es posible que desee evitar copias de seguridad comprimidas o programarlas para periodos de bajo uso de la CPU. El cdigo siguiente muestra cmo crear una copia de seguridad comprimida: BACKUP DATABASE SmallWorks

TO DISK=D:\SQLBackups\SmallWorksCompressed.bak WITH COMPRESSION, DESCRIPTION = Compressed Backup

WITH Options
La siguiente tabla muestra y describe brevemente cada opcin que puede ser incluido en la clusula de un comando de copia de seguridad de base de datos:

Backup Strategies
Como se mencion anteriormente, los diversos tipos de copia de seguridad proporcionadas por SQL Server 2008 se pueden utilizar en diferentes combinaciones para crear una variedad de estrategias de respaldo. En esta seccin, vamos a cubrir slo algunas de las estrategias de copia de seguridad ms comunes.

Full Backup Only


La estrategia de copia de seguridad completa (Figura 9-2) utiliza copias de seguridad peridicas de la base de datos completa con ninguna copia de seguridad de registro o diferencial. Se trata de una estrategia muy til y simple, pero en general est limitada a las pequeas bases de datos configuradas en el modelo de recuperacin simple y de bases de datos del sistema. Esta estrategia expone la base de datos para el riesgo de perder un perodo de modificaciones de datos. Por ejemplo, si la base de datos es una copia de seguridad todos los das a las 1:00 am y se produce un error de base de datos en cualquier momento antes de la 1:00 am, el punto de restauracin ms reciente ser 01 a.m. del da anterior. Para las pequeas bases de datos con muy pocas actualizaciones diarias, esto puede ser aceptable.

Full Backup with Differential


Al igual que la estrategia de copia de seguridad completa, la copia de seguridad completa con diferencial (Figura 9-3) se limita generalmente a bases de datos configuradas en el modelo de recuperacin simple, ya que no prev ninguna gestin del registro de transacciones. Sin embargo, la adicin de una copia de seguridad diferencial peridica hace que esta estrategia de copia de seguridad ms apropiado para bases de datos de cambio de un poco ms grandes que no se desea la gestin de un registro de transacciones. Debido a que slo los datos modificados desde la ltima copia de seguridad completa se copia a los medios de copia de seguridad, las copias de seguridad diferenciales peridicas sern ms pequeos en comparacin con las copias de seguridad completas y tendr menos tiempo para ejecutarse.

Full Backup with Transaction Log


Las desventajas de los planes diferenciales completa y total con que se exponen a la base de datos para el riesgo de prdida de datos igual a la periodicidad de la copia de seguridad. Mediante la introduccin de copias de seguridad del registro

de transacciones en el plan de copia de seguridad (Figura 9-4), este riesgo se reduce drsticamente. Sin embargo, la gestin de registros de transacciones se introduce una mayor complejidad a la administracin de los archivos de base de datos. Como se mencion anteriormente, cuando la base de datos no est en el modelo de recuperacin simple, el registro de transacciones debe estar respaldada peridicamente para evitar que crezca demasiado y llenando. El mtodo alternativo de mantener el registro es limpiar peridicamente, pero esto no se recomienda fuertemente como se describe ms adelante.

En el caso de un fallo de base de datos, la base de datos se puede restaurar hasta el momento de la falla mediante la realizacin de copias de seguridad del registro de transacciones peridicas entre copias de seguridad completas. El nmero de copias de seguridad del registro y la periodicidad de las copias de seguridad depende de lo ocupado que la base de datos y cul es el nivel aceptable de prdida de datos. En peor de los casos, tanto la base de datos y el registro de transacciones se pueden perder. Si ese es el caso, al igual que los planes de copias de seguridad completas y diferenciales, la base de datos slo puede ser restaurado a finales de la ltima copia de seguridad del registro de transacciones. Sin embargo, si slo los archivos de datos estn daados, la base de datos de copia de seguridad, copias de seguridad de registro, y el registro en lnea se pueden utilizar para restaurar la base de datos para el momento de la falla. Debido a las copias de seguridad del registro de transacciones suelen ser ms pequeos y rpidos, que pueden ser programados para ocurrir tan a menudo como sea necesario. No es raro ver a las copias de seguridad del registro de transacciones previstas para cada 10 minutos en las bases de datos que estn sujetos a modificaciones muy frecuentes.

Full and Differential Backup with Transaction Log


La desventaja de realizar varias copias de seguridad del registro de transacciones entre copias de seguridad completas es que con el fin de restaurar una base de datos, la copia de seguridad completa y todos los registros deben ser restaurados de forma secuencial. Esto puede ser una carga si hay un gran nmero de copias de seguridad de registro para restaurar. Para minimizar este problema, una copia de seguridad diferencial (Figura 9-5) se puede realizar para capturar todos los cambios a la base de datos desde la ltima copia de seguridad completa. Para

restaurar la base de datos, las copias de seguridad de registro entre el DNS y el diferencial puede ser ignorada.

File and Filegroup Backup


Con bases de datos muy grandes, a veces es ms eficiente para respaldar la base de datos en rodajas. Esto ofrece una gran flexibilidad en el plan de copia de seguridad, sino que tambin introduce un aumento proporcional de la complejidad del plan de copia de seguridad. Archivos y grupos de archivos de datos de bases de datos se pueden copiar y restaurar de forma individual, lo que permite al administrador de evitar un tiempo de consumo e innecesario de restauracin de una gran base de datos en su totalidad. Este mtodo es especialmente til si algunos de los grupos de archivos de slo lectura contienen datos. Estos grupos de archivos se pueden copiar una vez y luego se recuper ms tarde en el caso de un fallo, sin prdida de datos provisionales. Por ejemplo, una base de datos de produccin se compone de cuatro grupos de archivos de 25 GB. Uno de los grupos de archivos contiene tablas que se actualizan una vez cada tres meses. Los otros tres contienen datos transaccionales que se actualiza sobre una base regular. El primer grupo de archivos se puede configurar como Slo lectura y copia de seguridad. Los tres restantes se pueden respaldar en forma rotativa intercalados con copias de seguridad del registro de transacciones.

Filegroup with Differential


Si la estrategia de grupo de archivos todava se acumula demasiada informacin que no cambia, una copia de seguridad del archivo o grupo de archivos se puede combinar con un archivo o grupo de archivos de copia de seguridad diferencial. De esta manera slo los cambios en el archivo o grupo de archivos correspondiente sern respaldados. Sin embargo, puesto que el Archivo / Grupo de archivos de copia de seguridad sencilla aumenta la complejidad, la adicin de una copia de seguridad diferencial de la mezcla va a complicar an ms las cosas, y esta estrategia requerir una gran cantidad de planificacin y mantenimiento.

Partial Backup
Como se describi anteriormente, la copia de seguridad parcial (Figura 9-7) respalda el grupo de archivos principal y todos los grupos de archivos configurados READ_WRITE por defecto. Adems, los grupos de archivos configurados READONLY pueden aadirse al conjunto de copia de seguridad mediante la especificacin en la instruccin BACKUP. El propsito de esta estrategia es hacer copias de seguridad de los grupos de archivos de slo lee una

vez y luego hacer copias de seguridad peridicamente slo los grupos de archivos sujetos a modificacin.

Backup Summary
Como puedes ver, hay bastantes maneras diferentes de combinar tipos de copia de seguridad para desarrollar una estrategia de copia de seguridad adecuado. Cada tipo de copia de seguridad tiene sus ventajas y desventajas. Me gustara poder dar una gua prescriptiva para copias de seguridad de sus bases de datos, pero no puedo. Cada entorno es nico, desde el tamao de la base de datos y el nmero de transacciones por hora para el subsistema de disco de soporte de la base de datos. Es de vital importante para desarrollar una estrategia de copia de seguridad que reduce el riesgo de prdida de datos, mientras que al mismo tiempo que permite una estrategia de recuperacin de datos realista y efectiva.

Restoring Databases
Me he reunido con muchos administradores de bases de datos que se sorprendieron al descubrir que su plan de copia de seguridad de base de datos no se prestaba a una recuperacin sin problemas. Si tener un plan de copia de seguridad eficaz es fundamental, y luego tener un plan de restauracin efectiva es an ms crtica. SQL Server es muy tolerante al permitir diferentes tipos de copia de seguridad en diferentes momentos, pero es un poco ms selectivos acerca de cmo se restauran las copias de seguridad. La cuestin fundamental en la mayora de los planes de restauracin es la secuencia de copias de seguridad. En esta seccin se describe el proceso de restauracin, cmo preparar una base de datos para la restauracin, y cmo restaurar bases de datos de copia de seguridad mediante las estrategias descritas anteriormente.

Restore Process
El proceso de restauracin se compone de tres fases : la fase de copia de datos en la que las pginas de datos se copian de los medios de copia de seguridad en el archivo de datos ( s ), la fase de rehacer en la que el registro de las transacciones confirmadas se restaura desde una copia de seguridad de registro o la parte de una copia de seguridad de base de datos de log y, por ltimo , la fase en la que las transacciones no confirmadas se deshacen de una copia de seguridad de registro o de la parte de registro de una copia de seguridad de base de datos Deshacer.

La copia de Datos y fases Rehacer pueden abarcar varias copias de seguridad. Por ejemplo , una base de datos est respaldado por una copia de seguridad completa , seguida de una copia de seguridad diferencial y una copia de seguridad del registro de transacciones . Para restaurar la base de datos a su estado ms reciente requerira la restauracin de la copia de seguridad completa y luego la copia de seguridad diferencial , como parte de la fase de copia de datos . La parte del registro de la copia de seguridad diferencial se iniciara la fase de Redo, seguido de las transacciones confirmadas en la copia de seguridad del registro de transacciones . Despus de todas las transacciones confirmadas se vuelven a aplicar a la base de datos, se inicia la fase de deshacer en la que todas las transacciones no confirmadas se deshacen y la base de datos se pone en lnea .

Cada fase est unida a la siguiente. Si cualquier copia de seguridad no se encuentra en la secuencia, el proceso se detiene en la final de la copia de seguridad que precede a la secuencia que falta . La Figura 9-8 muestra una copia de seguridad de registro perdidos o daados. A pesar de que hay un registro de dos copias de seguridad adicionales, que no se pueden utilizar debido a que los efectos de las operaciones registradas en el respaldo pm 12:01 Transaction Log son desconocidos. La base de datos slo puede ser restaurado a finales de la copia de seguridad del registro de transacciones las 9:00 am.

Delaying Recovery
Al restaurar una serie de copias de seguridad como una copia de seguridad completa y una serie de copias de seguridad del registro de transacciones, la fase de deshacer y recuperacin de la base de datos tendr que ser retrasado para que cada copia de seguridad adicional puede ser restaurado. Una vez que una base de datos ha sido recuperada, no hay copias de seguridad adicionales pueden ser aplicados. Para retrasar la recuperacin, la opcin NO RECUPERACIN debe especificar junto con el comando RESTORE DATABASE.

RESTORE Command
Aunque las bases de datos se pueden restaurar con eficacia con las herramientas grficas proporcionadas en Management Studio, hay muchas opciones de restauracin avanzadas que slo estn disponibles mediante la utilizacin de Transact-SQL. La sintaxis del comando RESTORE simplificada es la siguiente:

RESTORE DATABASE | LOG database_name [File | FileGroup] [FROM <backup_media> [ ,...n ] ] [WITH [CHECKSUM | NO_CHECKSUM] [[,] FILE = file_number] [[,] MOVE logical_file_name TO operating_system_file_name] [,...n] [[,] RECOVERY | NORECOVERY | STANDBY = standby_file_name] [[,] REPLACE] [[,] STOPAT = date_time ] Para simplificar, vamos a romper el comando RESTORE sus partes constitutivas. El primero es el comando RESTORE actual, que por lo general es seguido por la base de discusin o LOG y luego el nombre de la base de datos de destino. Sin embargo, el comando RESTORE tambin se puede utilizar para exponer metadatos medios de copia de seguridad y para verificar la integridad de un conjunto de copia de seguridad. La siguiente tabla muestra los diferentes comandos RESTORE que exponen informacin sobre la copia de seguridad sin tener que restaurar la base de datos. La tabla es seguida por descripciones del proceso de restauracin actual.

COMMAND RESTORE HEADERONLY

DESCRIPCIN Expone informacin de los medios de copia de seguridad, tales como el nombre, la descripcin y el tipo de copia de seguridad, as como informacin acerca de la base de datos de copia de seguridad.

RESTORE FILELISTONLY

Expone el nombre de los archivos contenidos en el conjunto de copia de seguridad.

RESTORE LABELONLY

Recupera la informacin de los medios, como el nombre y la descripcin de los medios de comunicacin.

RESTORE VERIFYONLY

Comprueba la integridad de los medios de copia de seguridad. Si el conjunto de copia de seguridad se ha creado usando la opcin CHECKSUM, el comando VERIFYONLY leer las sumas de comprobacin de pgina, as como verificar para asegurarse de que la copia de seguridad se puede leer.

RESTORE DATABASE database_name


Especifica que el proceso de restauracin de una base de datos y se especifica el nombre de la base de datos de destino para restaurar. El nombre de base de datos especificada no necesita existir o ser el mismo nombre que la base de datos de copia de seguridad.

FILE
La declaracin DATABASE RESTORE puede ser seguido por el nombre lgico de un fichero de datos de base de datos para que slo ese archivo se restaura desde el medio de respaldo. Un archivo se puede especificar para Full, archivo y copias de seguridad de grupo de archivos. RESTORE DATABASE SmallWorks FILE = SmallWorksData2 FROM DISK = D:\SQLBackups\SmallWorksFull.BAK

FILEGROUP
La declaracin DATABASE RESTORE tambin puede ser seguido por el nombre de un grupo de archivos de base de datos para que slo ese grupo de archivos se restaura desde el medio de respaldo. Un grupo de archivos se puede especificar para copias de seguridad completas y grupo de archivos. RESTORE DATABASE SmallWorks FILEGROUP = SWUserData2 FROM DISK = D:\SQLBackups\SmallWorksFull.BAK

READ_WRITE_FILEGROUPS
La opcin READ_WRITE_FILEGROUPS slo restaura los grupos de archivos en la base de datos no marcados como de slo lectura. Esta opcin se puede utilizar con las copias de seguridad completas y parciales. RESTORE DATABASE SmallWorks READ_WRITE_FILEGROUPS FROM DISK = D:\SQLBackups\SmallWorksFull.BAK

PAGE
Para recuperarse de Torn pgina o errores de suma de comprobacin que identifican una o ms pginas de datos corruptos, la declaracin DATABASE RESTORE puede especificar la pgina de datos de 8 K para ser restaurado. La opcin de restauracin pgina requiere el ID de archivo y la pgina de ID que se pasan, como en el siguiente ejemplo: RESTORE DATABASE SmallWorks PAGE = 1:14 FROM DISK = D:\SQLBackups\SmallWorksFull.BAK

RESTORE LOG database_name


La instruccin RESTORE LOG especifica que el proceso de restauracin de un registro de transacciones de base de datos. La copia de seguridad debe ser de un proceso de BACKUP LOG. La restauracin del registro de transacciones se debe

aplicar a una base de datos existente. El primer nmero de secuencia de registro (LSN) de la copia de seguridad de registro de ser restaurado debe ser el siguiente LSN consecutivo despus del ltimo LSN de la sesin anterior o copia de seguridad de base de datos. RESTORE LOG SmallWorks FROM DISK = D:\SQLBackups\SmallWorksLog.BAK

FROM Options
Al restaurar una base de datos desde una copia de seguridad de base de datos o una copia de seguridad de registro, el comando RESTORE espera una ubicacin de medios de copia de seguridad que se especifica en la clusula FROM de la instruccin RESTORE. Si no se especifica la ubicacin de medios de copia de seguridad, se ejecuta la operacin de recuperacin. Durante la operacin de recuperacin, SQL Server pone al da todas las transacciones completas del registro de transacciones actual y revierte todas las transacciones incompletas, como muestra este ejemplo: RESTORE DATABASE SmallWorks Con esta sintaxis, la base de datos se recupera en su lugar. Esto puede ser necesario si la base de datos se deja en un estado de recuperacin, pero no hay copias de seguridad adicionales aplicables. Aparte de la opcin de recuperarse en su lugar, los siguientes argumentos son vlidos.

FROM DISK
The FROM DISC = file_location especifica que los medios de copia de seguridad reside en uno o ms discos fsicos identificados por una letra de unidad y la ubicacin o una ubicacin de red identificado por un UNC, como el cdigo siguiente se muestra: RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackUps\SmallWorksFull.BAK RESTORE DATABASE SmallWorks FROM DISK = \\AughtEight\SQLBackUps\SmallWorksFull.BAK

FROM TAPE
The FROM TAPE = tape_device especifica que los medios de copia de seguridad reside en una o ms cintas identificados por una cinta de UNC, como se muestra en el siguiente cdigo: RESTORE DATABASE SmallWorks FROM TAPE = \\.\tape1

FROM DATABASE_SNAPSHOT
La opcin DATABASE_SNAPSHOT especifica que la base de datos en lnea ser restaurado al estado en que estaba cuando se cre la instantnea de base de datos especfica. Las instantneas de bases de datos se discutirn al final de este captulo.

WITH Clause
Despus de la clusula FROM y sus argumentos viene la clusula WITH. La clusula CON del comando RESTORE tiene varias opciones. Los ms utilizados se describen en las secciones siguientes.

RECOVERY | NORECOVERY
Al restaurar una base de datos a partir de una secuencia de copias de seguridad, todas menos la ltima copia de seguridad debe ser restaurada con la opcin NORECOVERY. Esto permite que las copias de seguridad adicionales aplicables a la base de datos. La opcin de recuperacin completa la Rehacer / Deshacer fase de la restauracin como se ha descrito anteriormente, por lo que la base de datos a disposicin de las conexiones de clientes y prevenir restaurar an ms las operaciones. Con la recuperacin es el predeterminado ajuste, por lo que es importante para anular hasta que se est aplicando la copia de seguridad final. No hay un comando'''' UnRecover que le permitir reiniciar el proceso de restauracin. Una vez que se recupera la base de datos, todo el proceso de restauracin debe ser reiniciado para aplicar copias de seguridad adicionales. Sin embargo, si se han aplicado todas las copias de seguridad disponibles, pero no se recuper la base de datos, el comando RESTORE DATABASE se puede especificar sin designar una fuente para la restauracin de invocar el proceso de recuperacin con el registro de transacciones actual.

RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksFull.BAK WITH NORECOVERY RESTORE LOG SmallWorks FROM DISK = E:\SQLBackups\SmallWorksTailLog.BAK WITH RECOVERY

STANDBY
La opcin NORECOVERY deja la base de datos en un estado de recuperacin y evita el acceso a la base de datos. Las funciones opcionales STANDBY de la misma manera, excepto que permite acceso de slo lectura a la base de datos. Lo hace mediante el uso de un archivo en espera que almacena toda la informacin de Deshacer que normalmente se utiliza para recuperar la base de datos. La opcin ESPERA permite una copia de la base de datos se mantenga en un servidor independiente y actualizada peridicamente con registro de transacciones adicional restaura. Esta funcionalidad se encuentra en el corazn de trasvase de registros, que se describe en el captulo 12. RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksFull.BAK WITH STANDBY = E:\SQLBackups\SmallWorksUndoRollback.DAT

CHECKSUM | NO_CHECKSUM
La opcin CHECKSUM especifica que la informacin de checksum pgina se comprueba antes de que los datos se vuelven a grabar en la base de datos durante una operacin de restauracin. Si la copia de seguridad no se ha creado con la opcin de suma de comprobacin, la restauracin. . . CON comando CHECKSUM fallar. Tambin se generar un error si se encuentran errores de suma de comprobacin durante el proceso de restauracin. BACKUP DATABASE SmallWorks TO DISK = E:\SQLBackups\SmallWorksCheckSumFull.BAK WITH CHECKSUM

--Capture the tail of the log prior to restore operation BACKUP LOG SmallWorks TO DISK = E:\SQLBackups\SmallWorksTailLog.BAK WITH NO_TRUNCATE RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksCheckSumFull.BAK WITH CHECKSUM

CONTINUE_AFTER_ERROR | STOP_ON_ERROR
La opcin CONTINUE_AFTER_ERROR especifica que la operacin de restauracin continuar independientemente de los errores detectados en los medios de copia de seguridad. La configuracin predeterminada de STOP_ON_ERROR har que la operacin de restauracin falle si se produce algn error.

FILE
Uno de los aspectos ms confusos del comando RESTORE es que hay un FILE = opcin en el RESTORE clusula que especifica un nombre de archivo lgico y otro FILE = opcin en la clusula WITH, donde un numero entero se especifica el valor que representa la ubicacin de copia de seguridad en el archivo. Dado que varias copias de seguridad se pueden almacenar en un solo lugar identificado con un nombre, es importante ser capaz de diferenciar ellos. Al enviar mltiples copias de seguridad en la misma ubicacin del archivo, es esencialmente igual que el almacenamiento de archivos dentro de los archivos. Para diferenciar entre las diferentes copias de seguridad almacenadas en un solo archivo, el FILE = backup_number opciones especificadas. El siguiente ejemplo muestra varias copias de seguridad que se envan al mismo destino. El primero es un respaldo completo, el segundo es una copia de seguridad diferencial, y el ltimo es una copia de seguridad del final del registro. El ejemplo pasa a mostrar la restauracin de las copias de seguridad desde el mismo archivo. --inicializar el archivo de copia de seguridad y copia de seguridad de la base de datos SmallWorks al archivo. BACKUP DATABASE SmallWorks TO DISK = E:/SQLBackups/SmallWorksBackups.BAK

WITH INIT, DESCRIPTION = Full Backup of SmallWorks --enviar una copia de seguridad adicional en el fichero BACKUP DATABASE SmallWorks TO DISK = E:\SQLBackups\SmallWorksBackups.BAK WITH DIFFERENTIAL, DESCRIPTION = Differential Backup of SmallWorks --captura el final de registro antes de restaurar el funcionamiento BACKUP LOG SmallWorks TO DISK = E:\SQLBackups\SmallWorksBackups.BAK WITH NO_TRUNCATE, DESCRIPTION = Tail Log Backup of SmallWorks --restaura la copia de seguridad complete con NORECOVERY RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksBackups.BAK WITH FILE = 1, NORECOVERY --restaurar la copia de seguridad diferencial con NORECOVERY RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksBackups.BAK WITH FILE = 2, NORECOVERY --restaurar la copia de seguridad del final del registro con la recuperacin RESTORE LOG SmallWorks FROM DISK = E:\SQLBackups\SmallWorksBackups.BAK WITH File = 3, RECOVERY

MOVE TO
Cuando la restauracin de base de datos que a veces es necesario cambiar el nombre fsico o ubicacin del archivo de base de datos. Es mover logical_filename a operating_system_filename logra esto. Por ejemplo, un servidor de base de datos ha sido instalado, y lo que necesita para mover una base de datos del

servidor antiguo al nuevo servidor. Sistema de archivo de nuevo servidor no se organiza el mismo que el servidor antiguo par a nuevas ubicaciones se deben especificar. El siguiente ejemplo muestra cmo mover la base de daros SmallWorks de su ubicacin original a las nuevas unidades identificadas para ls archivos de datos y archivos de registro. RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksFull.BAK WITH MOVE SmallWorksPrimary TO S:\SQLData\SmallWorks.mdf , MOVE SmallWorks_log TO T:\SQLLogs\SmallWorks_log.ldf , MOVE SmallWorksData1 TO S:\SQLData\SmallWorksData1.ndf , MOVE SmallWorksData2 TO S:\SQLData\SmallWorksData2.ndf , REPLACE

PARTIAL
La opcin PARTIAL especfica que el grupo de archivos principal y los grupos de archivos definidos por el usuario designado. Restauraciones parciales se describen ms adelante en este captulo.

REPLACE
La opcin REPLACE reemplaza la base de datos de los controles de seguridad habituales de restauracin y especifica que la copia de seguridad archivos de referencia deben reemplazar los archivos existentes. Esto a veces es necesario su el registro de transacciones no es disponible para una copia de seguridad del final registro, pero la operacin de restauracin falla con errores por falta de copia de seguridad del final del registro existentes. La operacin REPLACE tambin permite que la copia de seguridad de una base de datos para ser restaurado en un documento existente de base de datos, incluso si los archivos y los nombres son diferentes.

DATABASE RESTRE PREPARATION


Hay varios motivos para restaurar una base de datos, y slo uno de ellos implica un fracaso de la base de datos. Puede muy bien ser que la nica vez que tendr que restaurar una base de datos es para mover una base de datos de un servidor

a otro, o para restaurar una base de datos de prueba y desarrollo, en cuyo caso no se Todava algunos pre-planeando hacer. En general, las tareas de preparacin son las siguientes: 1. Aislar la base de datos mediante la colocacin en el modo de SINGLE_USER (si es accesible). 2. Realice una copia de seguridad del final del registro de transacciones si en su totalidad o de registro masivo modelo de recuperacin. Esta captura toda la actividad reciente. 3. Recopilar informacin acerca de todas las copias de seguridad que se requieren para restaurar la base de datos para el estado coherente ms reciente.

ISOLATE THE DATABASE


Aislamiento de la base de datos suele ser necesario porque cuando se restaura una base de datos que se encuentra conectado, SQLServer esencialmente cae y luego vuelve a crear la base de datos de los medios de copia de seguridad. Como vimos antes, una base de datos no se puede quitar si alguien est conectado a la misma. Parte de la documentacin especifica que el base de datos se debe establecer en RESTRICTED_USER lugar de SINGLE_USER. Sin embargo, cuando se ha establecido una base de datos a RESTRICTED_USER acceso, todava permiten mltiples conexiones. SQL Server slo limita las conexiones a usuarios privilegiados como la DBO o SA. Si hay varios usuarios de DBO en su organizacin, RESTRICTED_USER no les impide conectarse a la base de datos. RESTRICTED_USER tambin no evitar que se abran varias ventanas y mltiples conexiones a la base de datos que est intentando restauracin, evitando as que la restauracin que se produzcan. Cada ventana de consulta y el Explorador de objetos de Management Studio utilizan su propia conexin. Para asegurarse de que la operacin de restauracin tendr xito, es mucho ms fcil simplemente coloque la base de datos de acceso de usuario nico. Irnicamente, para cambiar la base de datos de MULTI_USER a SINGLE_USER o acceso RESTRICTED_USER, debe tener acceso exclusivo a la base de datos, lo que equivale a SINGLE_USER.

CAPTURE RECENT ACTIVITY


Copia de seguridad del final del registro garantiza que las transacciones ms recientes (desde la ltima copia de seguridad) son grabadas y recuperables. A

menudo, esto no es un paso opcional, y restaurar no se permitir operaciones hasta que la copia de seguridad del final del registro se ha completado.

GATHER BACKUP INFORMATION


Este ltimo paso puede ser ms fcil si todo el servidor de base de datos no ha sufrido un fallo. SQL Server registra toda la copia de seguridad y restaurar el historial de la base de datos msdb. Para ver lo que piensa copias de seguridad de SQL Server Management Studio necesita ser restaurado, en el Explorador de objetos haga clic con bases de datos, haga clic en Restaurar Base de datos , y luego elegir la base de datos para restaurar de la Fuente para Restaurar base de datos de lista desplegable. Management Studio elegir automticamente las copias de seguridad para restaurar, como se muestra en la Figura 9-9. Tenga en cuenta que se trata de una restauracin completa. Si va a restaurar un archivo o grupo de archivos, Management Studio no es tan til. Se mostrar una lista de todos los archivos y copias de seguridad de grupo de archivos realizado, pero no va a seleccionar cualquiera de recuperacin. Usted tendr que hacerlo manualmente. Del mismo modo, si las decisiones tomadas por Management Studio no son lo que usted quiere, usted es capaz de anular las copias de seguridad seleccionados. Si la historia de copia de seguridad no est disponible, el '' '' De la opcin de dispositivo se puede utilizar para seleccionar un dispositivo de archivo o de copia de seguridad, y las copias de seguridad apropiadas puede ser elegido.

Como se ha descrito anteriormente, los medios de comunicacin la informacin de copia de seguridad tambin puede ser recuperada a travs de la utilizacin de tres RESTAURAR argumentos de comando: RESTORE HEADERONLY, RESTAURAR FILELISTONLY, y RESTORE LABELONLY.

RESTORING USER DATABASES


Las estrategias de copia de seguridad descritas anteriormente en este captulo se aplican sobre todo a bases de datos de usuario. Aunque el sistema de bases de datos necesita ser respaldados, la estrategia para que los respalda es muy sencillo y es normalmente limitado a slo copias de seguridad de base de datos completa. Esto se debe a bases de datos del sistema no cambian tan a menudo y son tpicamente bastante pequea. Esta seccin, por lo tanto, se describe el proceso de restauracin de bases de datos de usuario de las estrategias de copia de seguridad se defini anteriormente.

FULL RESTORE

El peridico de copia de seguridad completa de una base de datos es la ms simple de todas las estrategias de copia de seguridad y tambin es un muy simple estrategia de restauracin. Si necesita la base de datos para ser restaurado, simplemente busque la ltima copia de seguridad completa, y utilizar para restaurar la base de datos. Figura 9-10 ilustra una base de datos que est daado a las 9:00 am El ms reciente copia de seguridad se complet a las 12:02 horas en esta caso, los 12:02a.m. copia de seguridad se restaurar con la recuperacin. RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksWed0002.BAK WITH RECOVERY

FULL WITH DIFFERENCTIAL RESTORE


Copias de seguridad diferenciales requieren una copia de seguridad completa que se aplica antes de la restauracin del diferencial. La figura 9-11 ilustra un fracaso de la base de datos Smallworks a las 9:00 horas del mircoles. Desde una copia de seguridad diferencial se termin a las 12:02 horas del mircoles, la copia de seguridad diferencial el martes puede ser ignorada. El proceso de recuperacin es el Lunes de copia de seguridad completa seguida de la copia de seguridad diferencial mircoles. RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksFullMon0002.BAK WITH NORECOVERY RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksDiffWed0002.BAK WITH RECOVERY

FULL WITH TRANSACTION LOG-RESTORE


Al igual que la copia de seguridad diferencial y el proceso de restauracin, la copia de seguridad del registro de transacciones tambin requiere restablecer una lnea de base antes de que pueda ser aplicado. La figura 9-12 ilustra una base de datos Smallworks daado a las 3:00 pm desde la base de datos en el modelo de recuperacin simple o de registro masivo, el final del registro de transacciones puede ser capaz de ser

una copia de seguridad para capturar todos los cambios ms recientes de la base de datos. De esta manera, muy poco o nada de los datos se pueden perder. La copia de seguridad del final del registro se completa a las 3:10 pm Despus de la copia de seguridad del final del registro se ha completado, el proceso de restauracin se puede realizar, a partir del Lunes Copia de seguridad completa y luego proceder a travs de las copias de seguridad del registro de transacciones restantes. BACKUP LOG SmallWorks TO DISK = E:\SQLBackups\SmallWorksTailLogMon1510.BAK WITH NO_TRUNCATE RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksFullMon0002.BAK WITH NORECOVERY RESTORE LOG SmallWorks FROM DISK = E:\SQLBackups\SmallWorksLogMon0900.BAK WITH NORECOVERY RESTORE LOG SmallWorks FROM DISK = E:\SQLBackups\SmallWorksLogMon1202.BAK WITH NORECOVERY RESTORE LOG SmallWorks FROM DISK = E:\SQLBackups\SmallWorksTailLogMon1510.BAK WITH RECOVERY

FULL AND DIFFERENTIAL WITH TRANSACTION LOG-RESTORE


Cuando se utiliza tanto las copias de seguridad del registro de transacciones diferencial y para captar los cambios a la base de datos, lo importante es recordar la secuencia. Cada copia de seguridad diferencial incluye los cambios realizados en la base de datos que se registraron en los registros de transacciones durante el intervalo entre la copia de seguridad completa y cualquier diferencial

copia de seguridad completada. Figura 9-13 se muestra este comportamiento. Dado que la base de datos se daa a las 6:00 pm, una copia de seguridad del final del registro se completa para capturar toda la actividad de 15:00-18:00 La base de datos se restaura a continuacin, utilizando el Diferencial de registro de transacciones regulares completa y las copias de seguridad del final del registro. BACKUP LOG SmallWorks TO DISK = E:\SQLBackups\SmallWorksTailLogMon1810.BAK WITH NO_TRUNCATE, NORECOVERY RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksFullMon0002.BAK WITH NORECOVERY RESTORE DATABASE SmallWorks FROM DISK = E:\SQLBackups\SmallWorksDiffMon1202.BAK WITH NORECOVERY RESTORE LOG SmallWorks FROM DISK = E:\SQLBackups\SmallWorksLogMon1500.BAK WITH NORECOVERY RESTORE LOG SmallWorks FROM DISK = E:\SQLBackups\SmallWorksTailLogMon1810.BAK WITH RECOVERY

FILE AND FILEGROUP RESTORE


Archivo y grupo de archivos procesos de restauracin varan segn el modelo de recuperacin de la base de datos est configurada para y si el archivo o grupo de archivos est marcado como de slo lectura. Si la base de datos en el modelo de recuperacin simple, los nicos archivos o grupos de archivos que se pueden restaurar de forma independiente de la base de datos completa son los que estn marcados como de slo lectura. Dado que la base de datos est en el modelo de recuperacin simple, no se permiten las copias de seguridad del final del registro, y cualquier restauracin de un archivo de slo lectura o grupo de archivos dar

lugar a que el archivo o grupo de archivos es inmediatamente disponible para consultas. La sintaxis y el proceso de archivo o grupo de archivos individuales restauraciones son idnticos.

También podría gustarte