escritura de la hornada de copia de seguridad de todas las bases de datos de SQL Server

Ya hemos explicado cómo hacer copia de seguridad de una base de datos SQL Server desde la línea de comandos, así que lo que si desea hacer copia de todos sus bases de datos a la vez? Se puede crear un archivo por lotes que se ejecuta el comando de copia de seguridad para cada base de datos, pero este script tendría que ser actualizado cada vez que se añade o elimina una base de datos. Además, todas las copia de seguridad se añadirán a un archivo que crecerá por el tamaño de la nueva copia de seguridad cada vez que se ejecuta. En cambio, en la verdadera “establecer y olvidarse de que” la moda, vamos a crear un archivo por lotes que se adaptará a su SQL Server medida que se añaden y eliminan nuevas bases de datos.

Para llegar directamente al grano, este es el script de copia de seguridad

@ECHO OFF; SETLOCAL

Obtener REM fecha en formato AAAA-MM-DD (asume la configuración regional es Estados Unidos); for / F “tokens = 1,2,3,4 delims = /” %% A IN ( ‘Fecha / T’) configuras NowDate = %% D – %% B – C %%

REM Crear una lista de bases de datos de copia de seguridad; SET DBList =% del sistema% SQLDBList.txt; sqlcmd -E -S MiServidor -h-1 -W -Q “SET NOCOUNT ON, seleccione el nombre desde master.dbo.sysDatabases DONDE [Nombre] NO EN ( ‘modelo’ ‘maestro’, ‘msdb’, ‘tempdb’) “>”% DBList% ”

REM copia de seguridad de cada base de datos, anteponiendo la fecha al nombre de archivo; for / F “tokens = *” %% I EN (% DBList%) hacen; ECHO copia de seguridad de base de datos: %% I; BACKUP sqlcmd -E -S MiServidor -Q ” BASE DE DATOS [%% I] en el disco = ‘D: Copia de seguridad% NowDate% _ %% I.bak’ “; ECHO.

REM Limpiar el archivo temporal; SI EXISTE “% DBList%” DEL / F / Q “% DBList%”

ENDLOCAL

Suponiendo que la fecha es 1/13/2009 y tiene 3 bases de datos nombrados ‘MyDB’, ‘AnotherDB “y” Nombre de base de datos con espacios’, la secuencia de comandos producirá 3 archivos en la ubicación de copia de seguridad especificado

Por supuesto, tendrá que personalizar el script a su entorno así que aquí es lo que hay que hacer

Una vez que haya personalizado la secuencia de comandos por lotes, programarlo para que se ejecute a través del programador de tareas de Windows como un usuario con derechos de administrador y que está todo listo.

Estoy bastante seguro de que si se utiliza este método de copia de seguridad de su base de datos, no se va a limpiar nuestra tempdb. incorporado en el asistente para copias de seguridad de la base de datos Microsoft es todo lo que realmente necesita. Usted planificar su ejecución y su hecho. Esto también garantiza su tempdb se está limpiando a cabo.

Maravilloso

Necesito restaurar la secuencia de comandos demasiado para restaurar todas las bases de datos de copia de seguridad a la nueva instancia de SQL Server limpia. La explicación es la siguiente

Pregunta; ¿Cómo hacer copia de seguridad de SQL Server 2005 bases de datos de usuario en secuencia de comandos SQL con todos los datos (.sql) y restaurar esta secuencia de comandos de todas las bases de datos en el servidor SQL 2008

O

Cómo restaurar todas las bases de datos de copia de seguridad a través de esta secuencia de comandos en nueva instancia de SQL Server limpia (copia de seguridad en SQL Server 2005 Standard y restaurar a SQL Server 2008 Web Edition).

Alguien me puede ayudar a hacer copias de seguridad de todo Server 2005 bases de datos de usuario estándar en secuencia de comandos SQL (un sólo archivo) MS SQL y restaurar todas las bases de datos con datos de archivo único script de copia de seguridad al servidor SQL 2008 edición web.

Síntoma; opción para SQL Server 2005 a SQL estándar SQL Server 2008 Web Edition actualización no es compatible. Yo he planeado actualizar SQL Server 2005 instancia estándar al servidor SQL 2008 edición web que no es compatible y estoy pensando en hacer copias de seguridad de todas las bases en el servidor SQL estándar en un solo archivo de script (.sql) 2005 instalar nueva instancia de SQL Server 2008 edición web y restaurar fichero único en la nueva instancia. Por favor me ayude a copia de seguridad de todas las bases en el fichero único.

O

opción alternativa es la generación de secuencia de comandos para restaurar todas las bases de datos a través de la secuencia de comandos en la nueva instalación de SQL Server 2008 Web Edition.

Ayudame por favor.

Muchas gracias Jason. Necesitaba copia de seguridad del DB, su compresión, enviar el archivo a otro servidor y eliminar los baks sin comprimir;. Su guión era la pieza exacta que me faltaba de (con una ligera personalización y como se ha mencionado en caracteres utilizado).

Este fue un guión muy útil. ¿Hay alguna forma de ejecutar archivos por lotes de forma automática en un momento dado durante el día?

Para responder a mi propia pregunta, he utilizado la herramienta del sistema integrado de Windows, el Administrador de tareas. He creado una tarea que se ejecuta mis archivos por lotes en un momento determinado. Es una herramienta muy útil y me mantiene de tener que ejecutar realmente los archivos por lotes a mí mismo todos los días.

@Hayden: También hay una interfaz de línea de comandos para el programador de tareas, escriba AT /? para detalles. Los horarios de comando en el script para ejecutar con privilegios de LocalSystem, mientras que los programas de interfaz gráfica de usuario que se ejecute como cualquier cuenta de usuario creó la tarea. Así, un script programado con AT continuará funcionando después de que los usuarios originales se elimina la cuenta de administrador o puestos de trabajo reducida, GUI programadas no.

Ahora mis principales comentarios para este Como

1. En cualquier versión de Windows todavía el apoyo de MS, en lugar de “FECHA / T ‘, sólo puede utilizar”% FECHA% “porque FECHA por defecto es una variable cuyo valor es la magia lo FECHA / T haría salida.

2. Mientras que las versiones en blanco * * de las bases de datos del sistema (4 master etc.) se incluyen en una instalación nueva del servidor SQL, los que no contienen todos los cambios que (indirectamente) incorporar a dichas bases de datos mediante la configuración de su servidor. Por lo que necesitan ser respaldados y restaurado también. Por desgracia, Microsoft ha hecho de esta fuerza adicional mediante la promulgación de normas especiales para la forma en que los respalde.

Voy a utilizar el script como punto de partida en bruto como se creo un nuevo sistema de copia de seguridad para mis servidores SQL.

hola, no puedo obtener la secuencia de comandos para trabajar, se dijo “1 fue inesperado en este momento”. cualquier cuerpo sabe lo que puede ser el problema.

gracias.

las audiencias de televisión de difusión se han reducido en un asombroso 50 por ciento desde 2002, pero eso no significa que hemos abandonado el medio; tiempo de pantalla se ha mantenido estable como consecuencia de la transmisión de las fuentes de vídeo como YouTube y Netflix.