🎃 Grandes descuentos en libros en línea, eformaciones y vídeos*. Código CALABAZA30. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. SQL Server 2016
  3. Copia de seguridad
Extrait - SQL Server 2016 Aprender a administrar una base de datos transaccional con SQL Server Management Studio
Extractos del libro
SQL Server 2016 Aprender a administrar una base de datos transaccional con SQL Server Management Studio Volver a la página de compra del libro

Copia de seguridad

Introducción

La gestión de las copias de seguridad es una de las tareas más importantes que debe realizar el administrador de bases de datos. Si las operaciones de copia de seguridad se planifican con exactitud y rigor, es perfectamente posible realizarlas en forma de trabajos automatizados y el responsable será avisado por correo electrónico del correcto desarrollo de las operaciones.

Las copias de seguridad se realizan para prevenir las posibles pérdidas de datos como consecuencia de:

  • Un problema de soporte.

  • Errores de usuario.

  • Una pérdida permanente del servidor.

SQL Server permite hacer una copia de seguridad de la base de datos incluso cuando los usuarios están conectados. Esta copia de seguridad va a tener en cuenta todos los archivos que forman la base de datos y va a registrar su ubicación. El proceso de copia de seguridad asegura la coherencia de los datos y los diarios, capturando todas las actividades que se producen durante dicho proceso.

Aunque la base de datos permanece accesible durante la copia de seguridad, algunas operaciones son imposibles, a saber:

  • Crear o modificar una base de datos (fundamentalmente la extensión automática del diario (o registro) de transacciones).

  • Crear un índice.

  • Ejecutar operaciones que no están trazadas por un fichero de log, ya que el proceso de copia de seguridad utiliza el diario para garantizar la coherencia de los datos.

Planificación

La planificación de las operaciones de copia de seguridad implica también las de restauración, porque la una no se hace sin la otra. Son las exigencias en materia de disponibilidad de datos las que van a determinar los criterios para el establecimiento de las copias de seguridad. Para realizar esta planificación, es necesario reflexionar sobre todos los incidentes que pueden surgir y saber cuáles son las necesidades de copia de seguridad para restaurar lo mejor posible la información. Será posible automatizar todos estos trabajos de copia de seguridad y probar la restauración, validando el buen funcionamiento de los procedimientos de copia de seguridad.

1. Preguntas

Las principales preguntas que es necesario plantearse para planificar lo mejor posible las copias de seguridad son:

  • ¿Cuál es el tamaño de cada base de datos?

  • ¿Cuál es el volumen de las modificaciones de datos?

  • ¿Algunas tablas están sujetas a más modificaciones que otras?

  • ¿Cuánto tiempo puede permanecer no operativa la base de datos?

  • ¿La pérdida de modificaciones es crucial?

  • ¿Es fácil recrear los datos perdidos?

  • ¿Cuáles son los períodos importantes de utilización de la base de datos?

  • ¿La base sufre sobrecargas de trabajo puntuales durante las que no es posible lanzar una copia de seguridad?

  • ¿Los usuarios deben continuar accediendo a los datos durante las operaciones de copia de seguridad?

  • ¿Cuál es el lapso de tiempo entre las operaciones de truncado (eliminación de la parte inactiva) del diario de transacciones?

  • ¿Las copias de seguridad se conservan de manera cíclica?

  • ¿El servidor SQL está en un clúster?

  • ¿El servidor SQL está en un entorno multiservidor con una administración centralizada?

La duración de las operaciones de copia de seguridad va a depender fundamentalmente del soporte sobre el que efectúen las copias de seguridad. Son posibles dos soportes: las bandas (con la condición de que el lector de bandas se instale en el servidor SQL) y los archivos.

2. Elegir una estrategia de copia de seguridad

Para cada base de datos, es necesario elegir una estrategia de copia de seguridad, que va a ser una combinación de copias de seguridad completas de bases de datos y copias...

Establecimiento de las copias de seguridad

Las operaciones de copia de seguridad pueden ponerse en práctica bien mediante SQL Server Management Studio o bien con la ayuda de procedimientos almacenados en Transact SQL. Como siempre, la solución gráfica ofrece facilidad de aplicación, pero los comandos Transact SQL permiten acceder a la totalidad de las opciones propuestas.

1. Los modos de recuperación

Las posibilidades que se ofrecen en materia de copia de seguridad, y por lo tanto de restauración, están directamente asociadas al modo de configuración definido en cada base de datos. Los tres modos de recuperación que es posible configurar son:

  • El modo de recuperación simple: el diario se utiliza únicamente para garantizar la persistencia de las operaciones realizadas sobre los datos. Se trunca en cada punto de sincronización.

  • El modo de recuperación completo: en este modo, todas las transacciones se registran en el diario y permanecen almacenadas incluso después del punto de sincronización. En caso de error, la pérdida de datos se reduce, ya que la operación de restauración es posible hasta el punto de fallo (si se ha adoptado una política correcta de copia de seguridad). Se trata del modo de recuperación por defecto definido en las bases de datos de usuario.

  • El modo de recuperación de registro masivo: en este modo de recuperación avanzado, no solo se guarda en el diario la información relativa a las transacciones, sino también algunas operaciones que afectan a los datos, como la creación de índices.

Para configurar el modo de recuperación, es posible ejecutar la instrucción ALTER DATABASE.

Sintaxis

ALTER DATABASE nombreBaseDeDatos 
SET RECOVERY { FULL | BULK_LOGGED | SIMPLE }
 

También es posible modificar las propiedades de la base desde SQL Server Management Studio. Este último caso se ilustra a continuación para configurar la base GESCOM en modo de recuperación completa.

images/8222-recoverymode.png

2. El destino de las copias de seguridad

Las copias de seguridad pueden enviarse a diferentes soportes: disco duro, url.

images/832-diagrama.png

a. Disco duro

Las copias de seguridad en disco se realizan en el archivo del sistema operativo. La copia de seguridad se puede realizar en un disco local o remoto. Para que SQL Server pueda acceder a un recurso compartido, este debe estar...

Ejercicio: copia de seguridad de la base de datos

1. Enunciado

Realice una copia de seguridad completa de la base de datos LibroSSMS en el archivo c:\copia\LibroSSMS.bak.

2. Solución

Antes de realizar esta copia, debemos asegurarnos de que existe la carpeta c:\copia y crearla si es necesario.

Con la ayuda de SQL Server Management Studio

Desde el explorador de objetos, nos situamos sobre la base de datos LibroSSMS y seleccionamos la opción Tasks - Backup del menú contextual.

Rellenamos los campos de la ventana que aparece de la siguiente manera:

images/842-tp1.png

Con la ayuda de un script TransactSQL

La instrucción BACKUP permite realizar la copia de seguridad de la base de datos:


USE master;   
GO   
BACKUP DATABASE LibroSSMS TO DISK='c:\copia\LibroSSMS.bak';