¿Cómo se realiza una copia de seguridad de una base de datos en SQL Server 2005 desde la línea de comandos?

¿Cómo se realiza una copia de seguridad de una base de datos en SQL Server 2005 desde la línea de comandos?

Necesito crear una tarea programada que haga una copia de seguridad de una base de datos dentro de una instancia de SQL Server 2005.

¿Existe algún argumento de línea de comando que pueda usar para lograr esto?

Respuesta1

OSQL -E -Q "BACKUP DATABASE database_name TO DISK = 'path and filename'"

Como en:

OSQL -E -Q "BACKUP DATABASE master TO DISK = 'C:\master.bak'"

Asegúrese de ejecutarlo como un usuario que tiene derechos para hacer una copia de seguridad de esa base de datos (o, alternativamente, use los argumentos "-U" y "-P" para proporcionar un nombre de usuario/contraseña en la línea de comando... no es una buena opción idea, pensamiento.)

Respuesta2

En realidad, lo mejor aquí es usar SQLCMD en lugar de OSQL. OSQL se considera obsoleto a partir de SQL Server 2005, aunque todavía existe en SQL Server 2008.

información relacionada