Restaurar base de datos master SQL SERVER

Como buenos DBA que somos debemos prepararnos para lo peor como por ejemplo que el servidor donde está nuestra base de datos colapse. Ciertamente serán muy pocas veces las que necesitaremos restaurar el la base de datos master, pero como les dije, hay que estar preparado para todo. Pues bien, vamos a empezar.



Respaldar base de datos master

Lo primero que tenemos que hacer es respaldar la base de datos master por cualquier cosa, para respaldar la base de datos, se realiza de la misma manera que todas

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


Una vez hecho el respaldo, debemos restaurarlo, pero al realizar un restore, esto no será posible debido a que la base de datos se encuentra en uso, por lo cual lo haremos de una manera un poco distinta

Restaurar base de datos master

Para restaurar la base de datos master, tenemos que detener el servicio e iniciar en modo de usuario único a la instancia, será mas fácil desde Powershell o desde cmd, pero tiene que ser con privilegios elevados.

Para detener los servicios utilizaremos la sentencia de cmd net stop de la siguiente manera


Ahora iniciamos la instancia en usuario único con la opción /m con el comando net start


La instancia ya esta iniciada como usuario único, ahora lo que haremos es abrir la consola de comandos de SQL sqlcmd para poder restaurar

sqlcmd -S [server] -U [usuario] -P [password]



Al momento de introducir ese comando, apareceran unos número terminando en un signo >, eso indica que el sistema esta esperando un bloque de instrucciones el cual, no se ejecutará hasta escribir la sentencia GO. Es aquí donde restauraremos la base de datos de master mediante la sentencia RESTORE


USE [master]
RESTORE DATABASE [master] FROM  DISK = N'D:\BD\master.bak' 
WITH  FILE = 1,  NOUNLOAD,  
STATS = 5

GO

Una vez ejecutada esta sentencia, el sqlcmd se cerrará y hay que volver a iniciar el servicio nuevamente con la sentencia net stop, pero ahora sin el parámetro /m 



¡Listo! Hemos restaurado la base de datos master, para prevenirnos de cualquier desastre.

Hasta aquí el post, espero haya sido de su agrado y utilidad, cualquier cosa no duden en preguntar. Espero compartan, comenten, o den clic en algún anuncio patrocinado

Saludos

No hay comentarios.:

Publicar un comentario

Featured Post

Como saber la versión de SQL que tengo

 Buenas tardes queridos lectores, el día de hoy les traigo un post muy básico, pero útil en determinadas circunstancias, cuando queremos sab...