Saltar al contenido

Diario de un DBA

Problemas y soluciones para SQL Server

Menú
  • Inicio
  • Consultoria gratuita
  • tempdb
  • Curso Azure DP-300
  • Rendimiento
  • Seguridad
  • Sobre Mi
Menú

SQL Server – Backups y Restores

Publicada el julio 4, 2022junio 29, 2024 por solracamo

Contenido del post:

Toggle
  • Cómo hacer un backup en SQL Server
  • Cómo hacer un restore en SQL Server

Tomar un backup de una base de datos y usarlo para hacer un restore (con el mismo nombre o con otro distinto) es probablemente la primera cosa que me enseñaron en mi primer dia como DBA de SQL Server, también es probablemente la cosa más útil y necesaria que me enseñaron.

Podrías dedicarte exclusivamente a hacer backups/restores y es bastante probable que encontrases trabajo aunque sea simplemente para migrar bases de datos entre instancias.

Si no estás familiarizado con el SQL Server Management Studio (SSMS) o simplemente vienes de otra tecnología como era mi caso, aquí te dejo como hacerlo en muy pocos y sencillos pasos.

Usaré un caso real, en este caso el cliente nos pidió tomar un backup de la base de datos «CP» y restaurarla con el nombre «CP_test» para realizar algunas pruebas sobre ella.

Cómo hacer un backup en SQL Server

1- En SQL Server Management Studio, haz click con el botón derecho sobre la base de datos de la que quieres tomar un backup, luego en «Task» y haz click en «Back Up».

2- Si quieres hacer un backup para hacer un restore normal es importante que marques la casilla «Copy-only backup», de esta forma no romperás la cadena de backups que tengas programados. Haz click en «Add» para añadir la ruta donde se guardará el backup.

3- Selecciona la ruta y dale un nombre al backup, no olvides añadir la extensión «.bak».

4- Una vez hecho esto a mi me gusta hacer click en el botón de «Script». Esto nos creará un query que podremos ejecutar para hacer el backup.

No es estrictamente necesario hacerlo de esta forma, pero es mucho más fácil revisar que todo está correcto si podemos ver el script y, en caso de tener que detener el proceso, sólo tendremos que parar la ejecución de la query.

Esto nos generará el siguiente script, sólo tenemos que ejecutarlo y nuestro backup se creará en la ruta especificada:

BACKUP DATABASE [CP] TO DISK = N'H:\CP27722.bak'
WITH COPY_ONLY, NOFORMAT, NOINIT, NAME = N'CP-Full Database Backup',
SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO

Cómo hacer un restore en SQL Server

La restauración o el restore de una base de datos en SQL Server en un proceso un poco más complejo que el backup, pero nada complicado si prestamos un poco de atención a 2 o 3 pequeños detalles.

Como dije al principio, usaré el backup de la base de datos «CP» tomado anteriormente para restaurarlo sobre un base de datos nueva llamada «CP_test».

1- En el SQL Server Management Studio haremos click con el botón derecho sobre «Databases» y luego sobre «Restore Database…».

2- En «Device» seleccionaremos la ruta donde está guardado nuestro backup, y para este caso le diremos que la base de datos de destino es «CP_test». Como la base de datos no existe, la creará.

Si queremos hacer un restore sobre una base de datos que ya existe, simplemente seleccionaremos la base de datos que necesitemos restaurar en esta sección.

3- En la página «Files» revisaremos las rutas donde se restaurarán los archivos. Por defecto seguirá las rutas especificadas con la instalación, pero podemos cambiar esto marcando la casilla «Relocate all files to folder» y seleccionando las rutas que queramos.

4- En la página «Options» marcaremos o no la casilla «Overwrite». Es este caso no lo haré porque la base de datos de destino no existe, pero si existiese y quisiese sobrescribir los datos tendríamos que marcarla.

Por experiencia, preguntad siempre a vuestro cliente si quiere o no sobrescribir los datos, os ahorrareis disgustos y problemas.

5- Como paso final sacaremos el script y lo ejecutaremos de la misma forma que hicimos con el backup. El resultado en este caso es el siguiente:

USE [master]
RESTORE DATABASE [CP_test] FROM  DISK = N'H:\CP27722.bak' 
WITH  FILE = 1,  
MOVE N'PowerPick_ColorPicking' TO N'D:\MSSQLSERVER\DATA\CP_test.mdf',  
MOVE N'PowerPick_ColorPicking_log' TO N'E:\MSSQLSERVER\LOGS\CP_test_log.ldf', 
NOUNLOAD,  STATS = 5

GO

Cuando el proceso finalice, nuestro restore estará completo. No olvidéis de pedirle al cliente que compruebe que todo está correcto.

Felicidades, ahora ya podéis migrar bases de datos entre instancias.

7 comentarios en «SQL Server – Backups y Restores»

  1. Pingback: 💻SQL Server - Instalar SQL Server gratis - Diario de un DBA
  2. Pingback: Parchear un instancia SQL Server - Diario de un DBA
  3. Pingback: Migrar un entorno SQL Server a Azure - Diario de un DBA
  4. Pingback: Migrar logins entre instancias con DBAtools en SQL Server - Diario de un DBA
  5. Pingback: Mover bases de datos a otro disco en SQL Server - Diario de un DBA
  6. Pingback: Recuperar una tabla borrada en SQL Server - Diario de un DBA
  7. Pingback: Always On en SQL Server. Todo lo que necesitas saber - Diario de un DBA

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Consultoria Gratis

¿Tienes un problema o una consulta sobre tu servidor SQL Server? ¿Necesitas hacer algún tipo de mantenimiento o tarea en tu instancia, pero no tienes claro cómo hacerlo?

Envíame un email con tu caso y te contestaré lo antes posible de forma totalmente gratuita.

Puedes utilizar el formulario que encontrarás haciendo click aquí.

Sobre mi

Efectivamente, soy un muñeco de slack con la camiseta de Fernando Alonso en Renault, pero también soy una DBA mid level que vive y trabaja en inglaterra como consultor SQL Server.

El objetivo de este blog es escribir los problemas con los que me he ido encontrando y cómo los solucioné. Si estas soluciones han servido para mí, es posible que también lo hagan para ti, ¿no?

Otras soluciones

  • Recuperar la password de la cuenta SA en SQL Serveroctubre 5, 2024
  • Always On en SQL Server. Todo lo que necesitas saberagosto 24, 2024
  • Recuperar una tabla borrada en SQL Serveragosto 18, 2024
  • Mover bases de datos a otro disco en SQL Serveragosto 11, 2024
  • Comprobar los últimos backups tomados en una instancia SQL Serverjunio 29, 2024
  • Comprobar fragmentación en SQL Serverjunio 23, 2024

Curso Azure DP-300 Gratis

  • Azure DP-300 curso en Español – Parte 1noviembre 17, 2022
  • Crear una máquina virtual con SQL server en Azurenoviembre 17, 2022
  • Crear un servidor SQL Server en Azure.noviembre 22, 2022
  • Azure DP-300 curso en Español – Parte 2noviembre 24, 2022
  • Azure DP-300 curso en Español – Parte 3diciembre 1, 2022
  • Azure DP-300 curso en Español – Parte 4diciembre 14, 2022

Consulta las páginas que nadie consulta:
Privacidad
Cookies

Escríbeme!
Contacto

© 2025 Diario de un DBA
x