Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos


Buen dïa.

En esta ocasión vamos a tocar un tema que para algunos puede ser convencional, pero para muchos
otros puede ser de gran ayuda, principalmente para aquellos que no cuentan con suficiente hardware
para realizar algún tipo de restauración de pruebas o bien para poder probar algún cambio que se desee
implementar en un ambiente productivo.

No quiere decir que esta sea la recomendación y la mejor práctica a seguir, pero si brinda una guía y
principalmente una ayuda a todos aquellos DBA’s que inician y que requieren de ayuda para realizar
tareas triviales de respaldo y recuperación.


Descripción del escenario

Se cuenta con un único servidor de base de datos (Producción y Ocasionalmente Pruebas), debido al
problema con temas de presupuesto. Se le ha solicitado al DBA que un respaldo de la base de datos en
producción sea restaurado en el mismo servidor de producción para efectos de realizar unas pruebas de
cargas de datos antes de que las mismas se ejecuten en el ambiente de producción.

Nuevamente les repito, no necesariamente es la recomendación y la mejor practica el realizar esta
operación pero en ocasiones puede salvarles la existencia.

Lo primero que vamos a realizar es ingresar a SQL Server




                                         www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos


Validen la autenticación que van a utilizar, y una vez seleccionado el servidor al cual se va a ingresar
presionar el botón “Connect”

Seguidamente expandimos las opciones que nos brinda el servidor de base de datos, seleccionamos la
base de datos a la cual se le debe de realizar un respaldo.




Para este caso en particular hablamos de la base de datos TESTDB

Así que seleccionamos la base de datos TESTDB, presionamos el botón derecho de mouse, nos vamos a
la opción TASKS, y hacemos “Click” sobre la opción Backup, esto nos lleva a una nueva pantalla.




                                         www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




Aca es importante tomar nota de lo siguiente

   1. Normalmente la base de datos va a estar seleccionada en el apartado Source, sin embargo es
      importante validarlo y en caso que no este seleccionada hacerlo en el combo correspondiente.
   2. Para este caso específico se asume que el tipo de backup va a ser full. (En otro post hablaremos
      de los distintos tipos de respaldos y cuando utilizarlos)
   3. El componente a respaldar va a ser la base de datos por lo que la opción Database queda
      seleccionada.
   4. Destination: Acá se especifica la ruta en la cual deseamos que el respaldo sea generado, pese a
      las limitaciones actuales del escenario se asume que se cuenta con suficiente espacio en disco
      para realizar las distintas operaciones de respaldo y recuperación. Acá se debe de eliminar la
      entrada que existe y agregar la ruta válida, así que hacemos click sobre el botón Add




                                        www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




                                                                 1




                                                                                 2

                                           3




                                                                           4




                          www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




Especifique el nombre del backup, se recomienda utilizar las extensiones .bak para los respaldos de
datos. Si conoce la ruta la puede ingresar manualmente, caso contrario puede navegar para seleccionar
la ruta que corresponda e ingresar el nombre del respaldo. Presione Ok, para volver a la pantalla.




                                        www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




Seguidamente, presionamos el botón “Ok” nuevamente y eso nos llevará de vuelta a la pantalla
principal. Vamos a hacer un click en “Options”. Seleccionamos “Overwrite all existing backup set
expiration” y presionamos “OK”




                                       www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




Esto nos va a generar un archivo en la carpeta que seleccionamos que nos va a servir para realizar la
restauración que necesitamos.




                                        www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos


Ahora viene la parte que debemos de tener en consideración. La restauración, y que aspectos debemos
de tomar en cuenta a la hora de realizarla.

Vamos a empezar por ir al Managment Studio, y seleccionamos la carpeta Databases, botón derecho,
Restore Database… tal y como se muestra en la siguiente figura.




Seguidamente, seleccionamos la opción Device, y hacemos click en el botón con los tres puntos para
seleccionar el respaldo de la ruta en la que reside.




                                       www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




Una vez en la siguiente pantalla, el Backup media tiene por defecto que la ruta es un archivo por lo que
lo dejamos de esa manera, recordemos que los respaldos también pueden estar en un dispositivo de
cinta loca. Hacemos click en “Add” y ubicamos la ruta del respaldo.

Hacemos click en el botón “OK”




                                         www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




                          www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos


Esto nos lleva a la pantalla principal y en si la mas importante del proceso. Lean bien estos pasos y
háganlos con el debido cuidado.

   1. Podemos ver como en la opción Device ya aparece nuestra ruta de recuperación y la base de
      datos a la que pertenece el respaldo.
   2. Destination: Acá Deben de especificar OTRO NOMBRE para la base de datos, NO DEBE DE SER EL
      MISMO, vean que para este caso específico utilicé un nombre distinto. TESTDB_BAK es el
      nombre de la nueva Base de Datos que voy a restaurar.
   3. Restore Plan: Se alimenta automáticamente cuando seleccione el device de la opción 1.




                                        www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos


Ahora nos vamos a la opción FILES

   1. Acá tenemos dos opciones
          a. Seleccionamos Relocate All Files to folder, e ingresamos las rutas en donde va a residir
             la Data y el LOG. Importante, por seguridad les recomiendo que se cree una nueva
             carpeta en donde vayan a residir estos archivos. Para este ejemplo he creado la carpeta
             Nueva Data. Incluso pueden ver que el File Original esta en la ruta C:Data. Y en Restore
             As aparece como que la nueva ruta es C:Nueva Data




           b. La segunda opción es simplemente cambiando las rutas nosotros sin seleccionar
              Relocate all files to folder tal y como se muestra en la siguiente figura.




                                       www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




Cualquier de las dos opciones es correcta. Prestar atención al tema de las rutas, asegurémonos que las
rutas son distintas en el file original y en el destino (Restore As)

Hacemos click en Options, al costado izquierdo de la pantalla.




                                         www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




Para el caso del ejemplo mostrado acá que es sobre SQL Server 2012, quitamos el check de la opción
“Take tail-log backup before restore”

Y presionamos OK




                                       www.gpilatam.com
Respaldo y Recuperación de Base de Datos en el mismo servidor para múltiples propósitos




Finalmente la restauración de la base de datos es exitosa, y como lo muestra el mensaje de información
la nueva base de datos se llama TESTDB_BAK.




Incluso el proceso puede realizarse mediante un script como el siguiente

USE [master]
RESTORE DATABASE [TESTDB_BAK] FROM DISK = N'C:RespaldosTestDB_Bck' WITH FILE = 1,
MOVE N'TESTDB_Data' TO N'C:Nueva DataTESTDB_BAK_Data.mdf', MOVE N'TESTDB_Log' TO
N'C:Nueva DataTESTDB_BAK_Log.ldf', NOUNLOAD, STATS = 5

GO




                                         www.gpilatam.com

Respaldo y recuperacion

  • 1.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Buen dïa. En esta ocasión vamos a tocar un tema que para algunos puede ser convencional, pero para muchos otros puede ser de gran ayuda, principalmente para aquellos que no cuentan con suficiente hardware para realizar algún tipo de restauración de pruebas o bien para poder probar algún cambio que se desee implementar en un ambiente productivo. No quiere decir que esta sea la recomendación y la mejor práctica a seguir, pero si brinda una guía y principalmente una ayuda a todos aquellos DBA’s que inician y que requieren de ayuda para realizar tareas triviales de respaldo y recuperación. Descripción del escenario Se cuenta con un único servidor de base de datos (Producción y Ocasionalmente Pruebas), debido al problema con temas de presupuesto. Se le ha solicitado al DBA que un respaldo de la base de datos en producción sea restaurado en el mismo servidor de producción para efectos de realizar unas pruebas de cargas de datos antes de que las mismas se ejecuten en el ambiente de producción. Nuevamente les repito, no necesariamente es la recomendación y la mejor practica el realizar esta operación pero en ocasiones puede salvarles la existencia. Lo primero que vamos a realizar es ingresar a SQL Server www.gpilatam.com
  • 2.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Validen la autenticación que van a utilizar, y una vez seleccionado el servidor al cual se va a ingresar presionar el botón “Connect” Seguidamente expandimos las opciones que nos brinda el servidor de base de datos, seleccionamos la base de datos a la cual se le debe de realizar un respaldo. Para este caso en particular hablamos de la base de datos TESTDB Así que seleccionamos la base de datos TESTDB, presionamos el botón derecho de mouse, nos vamos a la opción TASKS, y hacemos “Click” sobre la opción Backup, esto nos lleva a una nueva pantalla. www.gpilatam.com
  • 3.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Aca es importante tomar nota de lo siguiente 1. Normalmente la base de datos va a estar seleccionada en el apartado Source, sin embargo es importante validarlo y en caso que no este seleccionada hacerlo en el combo correspondiente. 2. Para este caso específico se asume que el tipo de backup va a ser full. (En otro post hablaremos de los distintos tipos de respaldos y cuando utilizarlos) 3. El componente a respaldar va a ser la base de datos por lo que la opción Database queda seleccionada. 4. Destination: Acá se especifica la ruta en la cual deseamos que el respaldo sea generado, pese a las limitaciones actuales del escenario se asume que se cuenta con suficiente espacio en disco para realizar las distintas operaciones de respaldo y recuperación. Acá se debe de eliminar la entrada que existe y agregar la ruta válida, así que hacemos click sobre el botón Add www.gpilatam.com
  • 4.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos 1 2 3 4 www.gpilatam.com
  • 5.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Especifique el nombre del backup, se recomienda utilizar las extensiones .bak para los respaldos de datos. Si conoce la ruta la puede ingresar manualmente, caso contrario puede navegar para seleccionar la ruta que corresponda e ingresar el nombre del respaldo. Presione Ok, para volver a la pantalla. www.gpilatam.com
  • 6.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Seguidamente, presionamos el botón “Ok” nuevamente y eso nos llevará de vuelta a la pantalla principal. Vamos a hacer un click en “Options”. Seleccionamos “Overwrite all existing backup set expiration” y presionamos “OK” www.gpilatam.com
  • 7.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Esto nos va a generar un archivo en la carpeta que seleccionamos que nos va a servir para realizar la restauración que necesitamos. www.gpilatam.com
  • 8.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Ahora viene la parte que debemos de tener en consideración. La restauración, y que aspectos debemos de tomar en cuenta a la hora de realizarla. Vamos a empezar por ir al Managment Studio, y seleccionamos la carpeta Databases, botón derecho, Restore Database… tal y como se muestra en la siguiente figura. Seguidamente, seleccionamos la opción Device, y hacemos click en el botón con los tres puntos para seleccionar el respaldo de la ruta en la que reside. www.gpilatam.com
  • 9.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Una vez en la siguiente pantalla, el Backup media tiene por defecto que la ruta es un archivo por lo que lo dejamos de esa manera, recordemos que los respaldos también pueden estar en un dispositivo de cinta loca. Hacemos click en “Add” y ubicamos la ruta del respaldo. Hacemos click en el botón “OK” www.gpilatam.com
  • 10.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos www.gpilatam.com
  • 11.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Esto nos lleva a la pantalla principal y en si la mas importante del proceso. Lean bien estos pasos y háganlos con el debido cuidado. 1. Podemos ver como en la opción Device ya aparece nuestra ruta de recuperación y la base de datos a la que pertenece el respaldo. 2. Destination: Acá Deben de especificar OTRO NOMBRE para la base de datos, NO DEBE DE SER EL MISMO, vean que para este caso específico utilicé un nombre distinto. TESTDB_BAK es el nombre de la nueva Base de Datos que voy a restaurar. 3. Restore Plan: Se alimenta automáticamente cuando seleccione el device de la opción 1. www.gpilatam.com
  • 12.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Ahora nos vamos a la opción FILES 1. Acá tenemos dos opciones a. Seleccionamos Relocate All Files to folder, e ingresamos las rutas en donde va a residir la Data y el LOG. Importante, por seguridad les recomiendo que se cree una nueva carpeta en donde vayan a residir estos archivos. Para este ejemplo he creado la carpeta Nueva Data. Incluso pueden ver que el File Original esta en la ruta C:Data. Y en Restore As aparece como que la nueva ruta es C:Nueva Data b. La segunda opción es simplemente cambiando las rutas nosotros sin seleccionar Relocate all files to folder tal y como se muestra en la siguiente figura. www.gpilatam.com
  • 13.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Cualquier de las dos opciones es correcta. Prestar atención al tema de las rutas, asegurémonos que las rutas son distintas en el file original y en el destino (Restore As) Hacemos click en Options, al costado izquierdo de la pantalla. www.gpilatam.com
  • 14.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Para el caso del ejemplo mostrado acá que es sobre SQL Server 2012, quitamos el check de la opción “Take tail-log backup before restore” Y presionamos OK www.gpilatam.com
  • 15.
    Respaldo y Recuperaciónde Base de Datos en el mismo servidor para múltiples propósitos Finalmente la restauración de la base de datos es exitosa, y como lo muestra el mensaje de información la nueva base de datos se llama TESTDB_BAK. Incluso el proceso puede realizarse mediante un script como el siguiente USE [master] RESTORE DATABASE [TESTDB_BAK] FROM DISK = N'C:RespaldosTestDB_Bck' WITH FILE = 1, MOVE N'TESTDB_Data' TO N'C:Nueva DataTESTDB_BAK_Data.mdf', MOVE N'TESTDB_Log' TO N'C:Nueva DataTESTDB_BAK_Log.ldf', NOUNLOAD, STATS = 5 GO www.gpilatam.com