es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Restauración de base de datos MS-SQL: solo un grupo de archivos

Actualmente estoy luchando con la copia de seguridad/restauración de MS-SQL.

Situación:
Tengo un servicio de Windows en ejecución que crea copias de seguridad automáticas frecuentes (cada 15 minutos) que se envían a un almacenamiento en red.

El problema: La base de datos contiene muchas tablas temporales, de las cuales no estoy interesado en hacer una copia de seguridad de los datos históricos.

Por lo tanto, he movido las tablas de historial a un segundo grupo de archivos.

Lo que necesito es una copia de seguridad que incluya el esquema de la base de datos y los datos del grupo de archivos primario únicamente.

A partir de esa copia de seguridad, necesito restaurar una base de datos completamente funcional nuevamente.

Además, la base de datos está en modo de recuperación simple y como ya mencioné, necesito hacerlo mediante comandos SQL y no puedo usar el SSMS para generar el esquema / datos ya que lo estoy haciendo desde un programa de servicio de Windows de manera programática.

Gracias por cualquier idea.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Solución para la copia de seguridad y restauración selectiva utilizando comandos SQL

    Como experto en TI especializado en sql-server y copias de seguridad de bases de datos, la solución a su problema implica los siguientes pasos:

    1. Crear una copia de seguridad del grupo de archivos:
      • Use el comando BACKUP DATABASE, especificando el nombre de su grupo de archivos primario como destino.
      • Sintaxis: BACKUP DATABASE dbname FILEGROUP = nombre_del_grupo_de_archivos TO DISK = 'ruta_del_archivo'
      • Esto creará una copia de seguridad solo del grupo de archivos primario.
    2. Crear una copia de seguridad de la base de datos:
      • Utilice el mismo comando BACKUP DATABASE que en el paso 1, pero especifique el nombre completo de la base de datos en lugar del nombre del grupo de archivos.
      • Sintaxis: BACKUP DATABASE dbname TO DISK = 'ruta_del_archivo'
      • Esto creará una copia de seguridad completa de todo el esquema de la base de datos.
    3. Restaurar la base de datos:
      • Utilice el comando RESTORE DATABASE para restaurar la copia de seguridad completa de la base de datos del paso 2.
      • Sintaxis: RESTORE DATABASE dbname FROM DISK = 'ruta_del_archivo'
      • Esto restaurará todo el esquema de la base de datos, incluyendo el grupo de archivos primario y cualquier otro grupo de archivos, es decir, el grupo de archivos de historial.
    4. Restaurar el grupo de archivos primario:
      • Utilice el mismo comando RESTORE DATABASE que en el paso 3, pero agregue la opción FILEGROUP para especificar solo la copia de seguridad del grupo de archivos primario del paso 1.
      • Sintaxis: RESTORE DATABASE dbname FILEGROUP = nombre_del_grupo_de_archivos FROM DISK = 'ruta_del_archivo'
      • Esto restaurará solo el grupo de archivos primario y excluye el grupo de archivos de historial.

    Nota: Antes de restaurar el grupo de archivos primario, asegúrese de tener en cuenta los cambios realizados en el esquema o los datos del grupo de archivos de historial en el grupo de archivos primario. De lo contrario, es posible que la base de datos restaurada no funcione correctamente.

    Siguiendo estos pasos, puede crear un proceso de copia de seguridad y restauración selectiva en comandos SQL para su base de datos que incluya el esquema de la base de datos y los datos del grupo de archivos primario únicamente.

Comments are closed.