Me gustaría saber cómo detener/iniciar los servicios de MS SQL para poder copiar archivos de bases de datos SQL. Sé cómo hacer esto manualmente, pero me gustaría hacerlo desde un script.
Respuesta1
En lugar de copiar los archivos de datos, ¿qué tal si hacemos una copia de seguridad? De esa manera, no es necesario detener/iniciar el servicio SQL Server y provocar un tiempo de inactividad, como este, por ejemplo:
BACKUP DATABASE [databasename]
TO DISK = 'D:\BackupFiles\Database.bak'
WITH COPY_ONLY
GO
la COPY_ONLY
bandera especifica que la copia de seguridad es (sorpresa, sorpresa) solo una copia, por lo que no se rompe la cadena de copia de seguridad diferencial.
Respuesta2
para parar:
NET PARADA MSSQLSERVER
para empezar:
NET INICIO MSSQLSERVER
Pero le recomiendo que si desea copiar los archivos de la base de datos... (creo que para fines de respaldo) podría considerar usar un plan de mantenimiento con un esquema de respaldo si ya usa MS SQL SERVER. Para SQL Express necesita algunos scripts personalizados. Cuando finaliza la copia de seguridad de su base de datos, el archivo de salida no está bloqueado y puede almacenarlo en un lugar que desee, por ejemplo, en un dispositivo de copia de seguridad.