Exportar (0) Imprimir
Expandir todo
Expandir Minimizar

Cómo asegurar la disponibilidad de los Datos en SQL Server 2000

Por Marlon Chavarria

Contenido

 Introducción
 Creación de una estrategia de copia de seguridad de base de datos
 Uso de registros de transacciones en la copia de seguridad y en la restauración
 Modelos de recuperación
 Comprobación del modelo de recuperación
 Cambiando el modelo de recuperación
 Tipos de copias de seguridad
 Realizando una copia de seguridad por medio del Administrador Corporativo (Enterprise Manager).
 Realizando una copia de seguridad de la base de datos por medio del Analizador de Consultas (Query Analyzer)
 Realizando una restauración de la base de datos Doctores
     por medio del Administrador Corporativo
     por medio del Analizador de Consultas

Introducción

¿Cómo nos aseguramos de que nuestra base de datos esté disponible? No podemos garantizar que nuestra base de datos va a estar ahí cuando la necesitemos, pero lo que sí podemos garantizar es que si falla o algo sale mal, tengamos la capacidad de restaurarlo todo. Pero, ¿Cómo logramos esto? Creando un buen plan de recuperación y utilizando las operaciones de copia de seguridad y restauración disponibles en SQL Server 2000.

Los elementos básicos de una estrategia de disponibilidad de datos son los siguientes:

  • Planear el futuro.

  • Comprender los registros de transacciones y saber cómo utilizarlos para restaurar datos.

  • Realizar copias de seguridad de la base de datos.

  • Restaurar los datos.

Creación de una estrategia de copia de seguridad de base de datos

Las copias de seguridad de la base de datos son una parte fundamental en la creación de esta estrategia; sin una estrategia de copias de seguridad efectiva podríamos encontrarnos en una situación en la que tengamos una base de datos corrupta pero no las suficientes copias de seguridad para restaurarla.

Los tipos de fallas que podrían ocurrir son las siguientes, entre otras:

  • Datos inválidos del usuario.

  • Fallo en el disco duro.

  • Fallo en el servidor.

Para evitar perderlo todo a causa de un fallo, sigue las siguientes recomendaciones:

  • Realiza copias de seguridad con frecuencia (esto depende del uso de la base de datos).

  • Mantén copias de seguridad completas fuera del sitio.

  • Realiza comprobaciones de consistencia con cierta frecuencia.

  • Administra tus copias de seguridad con efectividad.

Uso de registros de transacciones en la copia de seguridad y en la restauración

SQL Server utiliza internamente un registro de transacciones para llevar el registro de las actualizaciones, inserciones y eliminaciones que ocurren en la bases de datos. El registro de transacciones junto con la copia de seguridad de la base de datos pueden ser utilizados para restaurar una base de datos y devolverla a un estado consistente.

Modelos de recuperación

SQL Server 2000 soporta los siguientes 3 modelos de recuperación:

  1. Recuperación completa: Es el modelo más completo; si se produce un fallo en el disco duro, te permite recuperar la base hasta el momento justo del fallo o en cualquier momento en el tiempo. Para poder lograr esto se registran todas las operaciones, lo que hace que el registro crezca demasiado ya que las operaciones masivas también se registran. Esta es una característica muy poderosa cuando se tiene una base de datos 24 x 7; nos permite asegurar que se pierda la menor cantidad de modificaciones posible.

  2. Registro masivo: Es una copia de seguridad completa. No obstante, si falla el disco duro, puede recuperarse con el modelo de copia masiva pero no te permite recuperar la base hasta cualquier momento en el tiempo.

  3. Recuperación Simple: Es el modelo más sencillo de todos, ocupa el menor espacio en disco y es el que ocupa menos recursos del sistema, pero también lo expone a mayores pérdidas de datos; este modelo no nos permite recuperar hasta cualquier momento en el tiempo ni hasta el momento del fallo.

Todos estos modelos tienen ventajas y desventajas; determinar cuál es el mejor de ellos depende de sus requerimientos individuales. Por ejemplo, una base de datos que tenga muchas transacciones y necesite recuperarse completamente lo más pronto posible se beneficiaría con el modelo de recuperación completa; por el contrario, una base de datos que haya tenido muchas actualizaciones masivas y no necesite recuperar las transacciones individuales de los usuarios podría utilizar el modelo de registro masivo; por último, el modelo simple se utiliza en aplicaciones que no sean cruciales o en aplicaciones en desarrollo.

Comprobación del modelo de recuperación

El modelo de recuperación se establece a la hora de crear la base y se fundamenta en la base de datos model. Para saber cuál modelo está utilizando la base de datos se utiliza la función DATABASEPROPERTYEX de la siguiente forma:

1: SELECT DATABASEPROPERTYEX (‘nombre base de datos’ , ’recovery’)

Cambiando el modelo de recuperación

Para cambiar el modelo de recuperación utiliza la instrucción ALTER DATABASE:

1: ALTER DATABASE nombre_base_datos SET RECOVERY [FULL | SIMPLE | BULK_LOGGED]

Full: completa; Simple: simple; y Bulk_logged: registro masivo.

Esta acción de cambiar el modelo de recuperación también se puede hacer de manera visual desde el Administrador Corporativo de SQL Server, cumpliendo los siguientes pasos:

  1. Abre el Administrador Corporativo.

  2. Selecciona la base de datos en la que deseas realizar el cambio.

  3. Una vez ubicada, haz clic con el botón derecho y selecciona Propiedades (tal como se muestra en la Figura 1).

    Bb972245.art237-img01-566x425(es-es,MSDN.10).jpg
    Figura 1. Volver al texto.

Luego haz clic en la pestaña Options y selecciona en el combo Model, los diferentes modelos de recuperación (Ver Figura 2).

Bb972245.art237-img02-566x425(es-es,MSDN.10).jpg
Figura 2. Volver al texto.

Tipos de copias de seguridad

Aunque se puede especificar el modelo de recuperación deseado, también se puede especificar qué porciones de la base de datos incluiremos en las copias de seguridad:

  • Base de datos completa: Esta copia incluye todos los objetos de la base de datos (tables, views, stored procedures).

  • Base de datos diferencial: Sólo copia las modificaciones que se le hayan hecho a la base de datos (DML, DDL) desde la última copia de seguridad completa.

  • Registro de transacciones: Copia el registro de transacciones, todas las transacciones de los usuarios (Insert, Update, Delete); como se tienen todas las transacciones se puede rehacer todo el trabajo que los usuarios hayan hecho.

  • Archivo y grupo de archivos: Nos permite realizar una copia de seguridad de una porción de la base de datos a la vez. Esta se debe usar cuando la base de datos es muy extensa, también se debe realizar copia del registro de transacción para poder recuperar la base.

Existen 2 formas de realizar la copia de la base de datos: por medio del Enterprise Manager, o bien por medio del Query Analyzer:

Realizando una copia de seguridad por medio del Administrador Corporativo (Enterprise Manager).

Debes llevar a cabo los siguientes pasos:

  1. Inicia el Enterprise Manager.

  2. Selecciona la base de datos de la cual deseas realizar una copia de seguridad.

  3. Haz clic con el botón derecho y selecciona todas las tareas; luego haz clic sobre Backup Database (tal como se muestra en la Figura 3).

    Bb972245.art237-img03-564x416(es-es,MSDN.10).jpg
    Figura 3. Volver al texto.

Luego de haber realizado los pasos descriptos, aparece una pantalla como la que se muestra en la Figura 4).

Bb972245.art237-img04-380x446(es-es,MSDN.10).jpg
Figura 4. Volver al texto.

Esta pantalla te permite configurar algunas cosas: lo primero es escoger cuál base de datos se desea respaldar (Database); seguidamente está el campo Name, donde debe establecerse un nombre para el respaldo; si bien el campo Description no es necesario, sería bueno especificarle una descripción, como por ejemplo, “Doctores Backup, 01/03/04, Completa”.

En la sección Backup debes seleccionar el tipo de copia que deseas realizar, según hemos visto anteriormente.

En la sección Destination debes seleccionar el destino de la copia de seguridad; si das clic en el botón Add aparecerá la una pantalla como la que se muestra en la Figura 5).

Bb972245.art237-img05-348x232(es-es,MSDN.10).jpg
Figura 5. Volver al texto.

En esta pantalla puedes ingresar la dirección del archivo o escogerlo dando clic en el botón .... Allí, el botón Remove es para remover una copia de la base de datos de la lista. El botón Contents por su parte, muestra el número de copias de seguridad actuales. La opción Overwrite te permite sobrescribir las copias de seguridad realizadas anteriormente. Por último, la opción Schedule es para programar la copia a cualquier hora del día. Una vez seleccionadas todas las opciones, da clic en el botón OK y a continuación aparecerá el aviso de progreso y al final de éste, la confirmación que indica que se ha realizado exitosamente la copia de seguridad (Ver Figura 6).

Bb972245.art237-img06-284x182(es-es,MSDN.10).jpg
Figura 6. Volver al texto.

Realizando una copia de seguridad de la base de datos por medio del Analizador de Consultas (Query Analyzer)

El código respectivo para realizar esta operación es el que se muestra a continuación:

BACKUP DATABASE Doctores
TO DISK = 'C:\Archivos de programa\Microsoft SQLServer\MSSQL$MISQLSERVER\BACKUP\DoctoresBackup.bak'
 WITH NOINIT, NOSKIP, STATS = 10

Realizando una restauración de la base de datos Doctores

Es importante no solo tener el instrumento, sino también saber utilizarlo.

por medio del Administrador Corporativo

Debes iniciar el administrador y dar clic con el botón derecho sobre la base de datos que deseas restaurar; luego de esto aparece la siguiente pantalla (Ver Figura 7).

Bb972245.art237-img07-494x463(es-es,MSDN.10).jpg
Figura 7. Volver al texto.

En esta pantalla se configuran todas las opciones de restauración. En la sección Restore puedes seleccionar el tipo de restore:

  • Database: permite restaurar la base de datos completa.

  • Filesgroups or Files: permite restaurar de un archivo o grupo de archivos.

  • From Device: permite restaurar desde un dispositivo.

El combo de más abajo, en la sección Parameters, contiene información sobre los respaldos más frecuentes de la base de datos. Una vez realizada la selección, da clic en Aceptar  y comienzará así el proceso de restauración (Ver Figura 8).

Bb972245.art237-img08-325x188(es-es,MSDN.10).jpg
Figura 8. Volver al texto.

Por último, un mensaje advierte el éxito de la restauración. (Ver Figura 9).

Bb972245.art237-img09-240x89(es-es,MSDN.10).jpg
Figura 9. Volver al texto.

Restauración de la base de datos por medio del Analizador de Consultas

Para realizar la restauración, ejecuta el siguiente código:

RESTORE DATABASE doctores
 FROM DISK = 'C:\Archivos de programa\Microsoft SQL Server\MSSQL$MISQLSERVER\BACKUP\doctores.bak'
 WITH STATS = 10

Marlon Chavarria es estudiante del último año de la Ingeniería Informática en la Universidad Latinoamericana de Ciencia y Tecnología, Costa Rica. Es Membership Manager del Costa Rica User Group .Net y miembro del proyecto Academic .Net Cell de Microsoft Centroamérica y Caribe. Ha obtenido 2 Estrellas del programa Desarrollador 5 Estrellas de Microsoft MSDN.

Mostrar:
© 2015 Microsoft