SQL Database Backup and Recovery Techniques

Microsoft SQL Server es un sistema de gestión profesional utilizado para manipular y comunicarse con datos en bases de datos relacionales. Para muchas organizaciones, una base de datos suele ser un componente crucial en una infraestructura informática o en un proyecto empresarial. Por esta razón, hacer backups de bases de datos SQL es esencial para evitar la pérdida de datos y el tiempo de inactividad de los servicios críticos.

Esta entrada del blog explica cómo hacer backup de Microsoft SQL Server utilizando diferentes métodos, incluyendo herramientas nativas, y luego recuperar los datos de la base de datos.

Backup for Microsoft 365 Data

Backup for Microsoft 365 Data

Use the NAKIVO solution to back up Microsoft 365 data in Exchange Online, Teams, OneDrive and SharePoint Online for uninterrupted workflows and zero downtime.

Tipos de backups en SQL Server

En Microsoft SQL Server, los backups son cruciales para proteger los datos y garantizar la recuperación de la información en caso de pérdida de datos, fallo de hardware u otros desastres. SQL Server es compatible con varios tipos de backups, cada uno de ellos con una finalidad específica. Los principales tipos de backups en MS SQL Server son:

  • Backups completos
  • Backups diferenciales
  • Backups del registro de transacciones
  • Backups de archivos
  • Hacer backup de solo copias

Backups completos

Un backup completo de SQL Server crea una copia de toda la base de datos MS SQL. Es el tipo de backup más sencillo y directo que existe, ya que incluye todos los objetos y datos disponibles en la base de datos relacional. Otros tipos de backups de Microsoft SQL Server utilizan el backup completo como base para cualquier otro tipo de backups.

Un backup completo de SQL representa una copia completa que contiene todos los elementos de la base de datos, como tablas, procedimientos, funciones, vistas, índices, etc. Además, incluye una parte del registro de transacciones. Esto simplifica la restauración de la base de datos, garantizando que se recupere con precisión el estado en que se encontraba en el momento de hacer el backup.

Este enfoque proporciona la forma más sencilla de recuperación de bases de datos, ya que todo el contenido de la base de datos está contenido en un único backups.

Las principales características de un backup completo de SQL Server son:

  • Un backup completo captura toda la base de datos, incluyendo todos los datos y objetos.
  • Es el tipo de backup más completo y constituye la base de otros tipos de backups.
  • Los backups completos son esenciales para la restauración completa de la base de datos.

Backups diferenciales

Una copia de seguridad diferencial en SQL Server captura selectivamente los datos de los extensiones de base de datos modificados desde la última copia de seguridad completa, utilizando una copia de seguridad completa como punto de partida. Este tipo de backups incluye alteraciones de objetos de esquema, archivos de registro y otros datos, optimizando el tiempo y la eficiencia del almacenamiento al tiempo que garantiza que se hacen backups de todos los cambios del servidor. Se utilizan banderas especiales para marcar los extensiones modificadas para un backup diferencial.

Una copia de seguridad diferencial de la base de datos representa los cambios acumulados desde la última copia de seguridad completa, lo que puede dar lugar a un tamaño compacto o considerable en función de los volúmenes de transacciones recientes.

Como un backup diferencial no incluye todos los elementos, su ejecución suele ser más rápida que la de un backup completo. Al capturar el estado de los objetos de base de datos modificados en el momento de su creación, un backup diferencial de base de datos representa datos diferentes en cada backup posterior al crear una serie de diferenciales para una base de datos que se actualiza con frecuencia.

A medida que estos backups aumentan de tamaño, la restauración de una copia de seguridad diferencial puede prolongar notablemente el tiempo necesario para la recuperación. En consecuencia, es aconsejable iniciar periódicamente un nuevo backup completo a intervalos predefinidos para establecer una base diferencial fresca de los datos.

En resumen, las principales características del backup diferencial de SQL Server son:

  • Un backup diferencial captura sólo los cambios realizados en la base de datos desde el último backup completo.
  • Incluye todos los cambios realizados en una base de datos desde el último backup completo, no sólo los cambios realizados desde el último backup diferencial.
  • Los backups diferenciales pueden reducir el tiempo necesario para restaurar una base de datos en comparación con la restauración a partir de backups completos únicamente.

Lee más sobre los tipos de backups completo, diferencial e incremental para entender mejor sus diferencias.

Backups del registro de transacciones

Una copia de seguridad del registro de transacciones en Microsoft SQL Server comprende todas las transacciones que se producen desde la última copia de seguridad del registro de transacciones, lo que facilita la restauración de la base de datos a un punto específico en el tiempo. Como su nombre indica, un backup de logs se centra en hacer backups de los logs de transacciones y se aplica exclusivamente a los modelos de recuperación de logs completos o masivos. Los archivos de registro de transacciones mantienen una serie de registros que documentan el historial de modificaciones de datos en una base de datos. El backup del registro de transacciones incluye todos los registros no cubiertos en el backup anterior del registro de transacciones.

En esencia, una copia de seguridad del registro de transacciones engloba todos los cambios realizados en la base de datos, algo especialmente necesario cuando se utiliza el modelo de recuperación completa o masiva para truncar el registro. Es importante saber que los backups consecutivos del registro de transacciones no duplican los datos, y el rendimiento no se ve afectado durante la ejecución de un backup del registro de transacciones. Por lo tanto, puede realizar esta operación incluso en periodos de gran carga de trabajo.

Las principales funciones de los backups del registro de transacciones en Microsoft SQL Server son:

  • Los backups del registro de transacciones capturan los cambios del registro de transacciones desde el último backup del registro.
  • Permiten la recuperación puntual y son cruciales para mantener la coherencia de los datos.
  • Se utiliza junto con los backups completos y diferenciales para crear una estrategia de backup completa.

Backups de archivos y grupos de archivos

El backup de archivos permite hacer backups independientes de cada archivo en lugar de requerir el backup de toda la base de datos. Esto es aplicable cuando se han establecido varios archivos de datos para su base de datos.

Una situación que justifica este tipo de backups es cuando se trata de archivos excepcionalmente grandes que requieren una atención especial en términos de backups. La ejecución de un backup de archivos puede realizarse a través de T-SQL o SSMS. Sin embargo, si su base de datos consiste predominantemente en un único archivo de datos, esta opción puede no ser adecuada.

Las principales funciones de hacer backup de archivos MS SQL son:

  • Este tipo de backups permite hacer backups de archivos individuales de la base de datos o de grupos de archivos.
  • Resulta útil para hacer backup de partes concretas de una base de datos.
  • También puedes hacer backups de archivos/grupos de archivos para restauraciones parciales.

Hacer backup de solo copia

Una copia de seguridad de sólo copia para MS SQL Server funciona independientemente de la secuencia de copias de seguridad convencional, creando una copia de seguridad sin influir en las copias de seguridad originales, las secuencias de copias de seguridad o los procesos de restauración. Una copia de seguridad de sólo copia es útil para experimentar con cambios en la información respaldada sin afectar al conjunto de datos primario, permitiendo la creación de una copia de seguridad sin interrumpir los protocolos generales de copia de seguridad y restauración de la base de datos. Tenga en cuenta que un backup de sólo copia (para backups completos) no puede utilizarse para crear backups diferenciales.

La principal ventaja de hacer backups sólo con copia reside en que no interrumpe la secuencia habitual de backups ni los procesos estándar de restauración. Normalmente, la mayoría de los métodos de backups de MS SQL Server afectan a la base de datos y a los procedimientos de restauración. Al utilizar backups de sólo copia, los equipos de TI pueden crear backups que permanecen independientes de las copias de seguridad originales y de los procesos de restauración. Es esencial tener en cuenta que hacer backups sólo con copia no permite registrar de forma centralizada el historial de backups.

A menos que se utilice sólo copia para el backup completo, el backup diferencial posterior puede verse afectado. La distinción clave entre una copia completa y una copia sólo completa radica en que esta última no rompe la cadena diferencial. Es importante destacar que ninguno de estos métodos interrumpe la cadena de registro, ya que ninguno trunca el archivo de registro.

En cuanto a los backups de logs, aplicables a los modelos de recuperación completa y masiva de logs, el objetivo de un backup de logs sólo en copia es capturar el punto de archivo de logs existente. Aunque se utiliza con poca frecuencia, una copia de seguridad del registro sólo con copia puede ser útil para una restauración en línea en determinadas situaciones.

Las principales funciones de un backup de sólo copia de MS SQL son:

  • Un backup de sólo copia no afecta a la secuencia normal de backups. Se trata de un backup adicional que se realiza independientemente de la cadena de backups habitual.
  • Útil para crear backups con fines específicos sin interrumpir la estrategia de backup establecida.

Todos estos tipos de backups de Microsoft SQL Server pueden combinarse para crear una estrategia de backup integral que satisfaga los requisitos específicos de su entorno SQL Server. Probar y validar periódicamente los procedimientos de backup y restauración también son componentes esenciales de una estrategia sólida de protección de datos.

Cómo hacer backup de bases de datos SQL

Existen algunos métodos para hacer backups de bases de datos MS SQL con herramientas nativas de Microsoft:

  • MS SQL Server Management Studio (SSMS) es una herramienta nativa gratuita con una interfaz gráfica fácil de usar. SSMS debe instalarse manualmente en el mismo servidor o máquina remota en la que está instalado SQL Server.
  • Los comandos Transaction SQL (T-SQL ) se utilizan para gestionar MS SQL Server, incluidas las operaciones de backups y restauración de bases de datos.
  • sqlcmd es una utilidad de la línea de comandos de Windows (cmd) que permite ejecutar comandos T-SQL en SQL Server.
  • PowerShell es un entorno avanzado de línea de comandos en Windows que admite la gestión de SQL Server tras instalar el módulo SqlServer PowerShell.

Backup en MS SQL Server Management Studio

Para hacer un backup de una base de datos SQL Server, haga lo siguiente:

  1. Abra MS SQL Server Management Studio (SSMS) e inicie sesión en SSMS utilizando la cuenta administrativa.
  2. En el Explorador de objetos, situado en la parte derecha de la ventana de SSMS, vaya a Bases de datos y haga clic con el botón derecho del ratón en el nombre de la base de datos de la que desea hacer backup de. En este ejemplo utilizamos AdventureWorks2022 como base de datos.
  3. En el menú contextual, haga clic en Tareas > Backup.

    MS SQL backup de base de datos en SSMS

  4. Configure los parámetros en la ventana Copia de seguridad de la base de datos.
    • Fuente:
      • Base de datos: AdventureWorks2022
      • Tipo de backups: Seleccione Completa o Diferencial (primero debe hacer un backup de completa).
      • Componente de backups: Base de datos
    • Destino:
      • Hacer backup de: Disco o URL (seleccionar disco)
    • Desmarque la casilla Copy-only backup si no desea crear un backup de sólo copia.

    NOTA: Puede editar los ajustes si desea crear un backup de otro tipo.

    La ruta establecida en las propiedades generales del servidor de bases de datos MS SQL se selecciona por defecto. Puede cambiar la ruta predeterminada en los ajustes globales: haga clic con el botón derecho en el nombre de MS SQL Server en el Explorador de objetos, haga clic en Propiedades, seleccione la página Configuración de la base de datos y vea/edite Ubicaciones predeterminadas de la base de datos.

  5. Haga clic en Add (Añadir) para seleccionar una ubicación de destino personalizada para el actual job de backup de MS SQL y seleccione Delete (Eliminar ) para eliminar la ubicación innecesaria en consecuencia. En este ejemplo seleccionamos«D:\MS SQL Backup DB\AdventureWorks«.

    NOTA: Para almacenar un backup, utilice un disco distinto del disco donde se encuentra la base de datos original. Se recomienda seguir la regla 3-2-1 de backups para una estrategia sólida de protección de datos. También puede configurar el comportamiento de sobrescritura y la compresión en Opciones de medios y Opciones de backups según corresponda. El botón Script crea un script T-SQL basado en los ajustes seleccionados.

    Configurar backups de bases de datos MS SQL en SSMS

  6. No olvides introducir un nombre de archivo de backups. Tenga en cuenta que los backups diferenciales pueden utilizar la extensión de archivo.dif.

    Selección de la ubicación de destino para un backup de base de datos

  7. Pulse OK en cada ventana para continuar.

Si todo es correcto, debería ver el mensaje El backup de la base de datos «AdventureWorks2022» ha finalizado correctamente.

Microsoft SQL backup schedule en SSMS

Puede automatizar el backup de bases de datos MS SQL y programar jobs de backups. Para programar backups de bases de datos, realice los siguientes pasos en Microsoft SQL Server Management Studio.

  1. En el Explorador de objetos, vaya a Gestión, haga clic con el botón derecho en Planes de mantenimiento y haga clic en Nuevo plan de mantenimiento.
  2. Introduzca un nombre para un nuevo plan de mantenimiento, por ejemplo, MS SQL Backup Plan. Pulsa OK.

    Creación de un plan de mantenimiento para configurar el programa de backups de bases de datos MS SQL

  3. Haga clic en el icono Calendar (Subplan schedule) para configurar el programa de backups de MS SQL.

    Abrir un calendario para programar una tarea de backup en SSMS

  4. Seleccione las opciones de programación de backups de MS SQL que necesite:
    • Tipo de programación: Recurrente (por defecto)
    • Frecuencia
    • Frecuencia diaria
    • Duración

    Pulsa OK para guardar los ajustes.

    Creación de un nuevo job de backups de bases de datos en MS SQL Management Studio

  5. Haga clic en ToolBox en la esquina superior izquierda de la interfaz SSMS.

    Abrir la caja de herramientas en MS SQL Server Management Studio

  6. Arrastre Back Up Database Task desde Toolbox al área vacía de la pestaña MS SQL Backup Plan [Design].
  7. Haga doble clic en Back Up Database Task que acaba de arrastrar y soltar en la pestaña MS SQL Backup Plan [Design].

    Arrastre y suelte la tarea de copia de seguridad de la base de datos de la caja de herramientas

  8. Se abre la ventana de opciones de la tarea Back Up Database. Seleccione el tipo de conexión, por ejemplo Conexión a servidor local.
  9. Configure los ajustes necesarios en las pestañas General, Destino y Opciones:
    • Tipo de backups: Completa o Diferencial
    • Bases de datos: Bases de datos específicas, Todas las bases de datos, Bases de datos del sistema o Todas las bases de datos de usuario.
    • Hacer backup de hasta: Disco

    Configurar una tarea programada de backups de bases de datos MS SQL

    Las opciones de las pestañas Destino y Opciones se muestran en la siguiente captura de pantalla.

    Pulse OK para guardar los ajustes de la tarea programada de backups de bases de datos MS SQL.

    Pestañas Destino y Opciones

  10. Puede hacer clic en Ver T-SQL para ver los comandos que puede utilizar en T-SQL para ejecutar la tarea que ha creado en la interfaz gráfica de usuario de SSMS.

    Visualización de un script de backup de base de datos T-SQL generado con una tarea programada

  11. Pulse Ctrl+S para guardar los cambios en SSMS.
  12. Pulse F5 para actualizar los elementos mostrados en SSMS.
  13. Vaya a SQL Server Agent > Jobs en Object Explorer. Puede abrir el Job Activity Monitor y ver el MS SQL Backup Plan.Sublan en la lista de jobs.

    Visualización del estado del backup de una base de datos MS SQL en el monitor de actividad del job

  14. Actualice la página haciendo clic con el botón derecho en Jobs o en otro objeto y haciendo clic en Actualizar. En el Explorador de Objetos, vaya a SQL Server Agent > Jobs, seleccione MS SQL Backup Plan.Subplan, haga clic con el botón derecho en este objeto y haga clic en Start Job at Step para iniciar el job de backups programado ahora mismo.

    Iniciar un job de backups de MS SQL inmediatamente

    Alternativamente, puede crear una tarea programada de backups de MS SQL yendo a Object Explorer > Management > New Maintenance Plan. Existen las mismas opciones, pero hay que seguir todos los pasos.

MS SQL backup en T-SQL

Utilice los siguientes comandos principales para hacer backup de una base de datos MS SQL en T-SQL para cada tipo de backups:

  • Backups completos:

    BACKUP DATABASE YourDatabaseName TO DISK = 'C:\Backup\YourDatabaseName_Full.bak';

    Sustituya YourDatabaseName por el nombre de su base de datos y especifique la ruta del archivo de backup deseado (utilice otro disco, no un disco de sistema (C:) o un disco con la base de datos original).

  • Backups diferenciales:

    BACKUP DATABASE YourDatabaseName TO DISK = 'C:\Backup\YourDatabaseName_Diff.bak' WITH DIFFERENTIAL;

    Asegúrese de haber creado previamente un backup completo antes de crear el backup diferencial.

  • Backups del registro de transacciones:

    BACKUP LOG YourDatabaseName TO DISK = 'C:\Backup\YourDatabaseName_Log.bak';

    Los backups del registro de transacciones son cruciales para la recuperación puntual y el mantenimiento de la coherencia de los datos.

  • Hacer backup de archivos:

    BACKUP DATABASE YourDatabaseName FILE = 'LogicalFileName' TO DISK = 'C:\Backup\YourDatabaseName_File.bak';

    Sustituya LogicalFileName por el nombre lógico del archivo o grupo de archivos del que desea hacer backup de.

  • Hacer backup de sólo copia:

    BACKUP DATABASE YourDatabaseName TO DISK = 'C:\Backup\YourDatabaseName_CopyOnly.bak' WITH COPY_ONLY;

    Los backups de sólo copia no interrumpen la secuencia regular de backups.

Ya hemos explicado los comandos básicos en los ejemplos anteriores. Puede utilizar parámetros adicionales para ajustar ajustes avanzados de backups en comandos T-SQL. A continuación se muestran algunos ejemplos de scripts T-SQL para hacer backups en Microsoft SQL Server con opciones avanzadas, incluida la compresión:

  • Backups completos con compresión:

    -- Full Backup with Compression

    BACKUP DATABASE YourDatabaseName

    TO DISK = 'C:\Backup\YourDatabaseName_Full.bak'

    WITH COMPRESSION, INIT;

    Dónde:

    NombreDeTuBaseDeDatos debe sustituirse por el nombre de su base de datos.

    C:\Backup\NNNTuNombreDeBaseDeDatos_Full.bak es la ruta y el nombre del archivo de backups que debe cambiar en su caso.

    WITH COMPRESSION es la opción que habilita la compresión para reducir el tamaño del backup.

    INIT es la opción que inicializa un nuevo conjunto de medios.

    define el inicio del comentario

  • Backups completos con diferentes opciones:

    -- Full Backup with various options

    BACKUP DATABASE YourDatabaseName

    TO DISK = 'C:\Backup\YourDatabaseName_Full.bak'

    WITH

     FORMAT, – Sobrescribe el conjunto de medios existente

     NAME = 'FullBackup', – Especifica el nombre del conjunto de backups

     STATS = 10, – Imprime un mensaje cada 10 por ciento de finalización

     CHECKSUM, – Verifica la integridad de los backups

     COMPRESSION, – Activa la compresión

     INIT; – Inicializa un nuevo conjunto de medios

  • Backups del registro de transacciones:

    -- Transaction Log Backup

    BACKUP LOG YourDatabaseName

    TO DISK = 'C:\Backup\YourDatabaseName_LogBackup.trn'

    WITH

     FORMAT, – Sobrescribe el conjunto de medios existente

     NAME = 'LogBackup', – Especifica el nombre del conjunto de backups

     STATS = 10, – Imprime un mensaje cada 10 por ciento de finalización

     INIT; – Inicializa un nuevo conjunto de medios

  • Hacer backup de varios archivos:

    -- Full Backup to Multiple Files

    BACKUP DATABASE YourDatabaseName

    TO

    DISK = 'C:\Backup\YourDatabaseName_Full1.bak',

    DISK = 'C:\Backup\YourDatabaseName_Full2.bak'

    WITH INIT;

Estos ejemplos muestran varias opciones avanzadas como formatear el conjunto de medios, especificar nombres de conjuntos de backups, mostrar estadísticas de progreso y verificar la suma de comprobación. Puede personalizar estos guiones de muestra en función de sus requisitos y preferencias específicos.

Copia de seguridad de tablas MS SQL

Para hacer backup de una tabla específica en Microsoft SQL Server, puede utilizar la función Generate Scripts de MS SQL Server Management Studio (SSMS) para crear un script de backup para el esquema y los datos de la tabla o utilizar la utilidad bcp (Programa de copia masiva). Tenga en cuenta los siguientes pasos para ambos métodos.

Método 1: Generar scripts en SSMS

Haga lo siguiente para generar un script T-SQL y hacer backup de una tabla particular de una base de datos MS SQL:

  1. Inicie MS SQL Server Management Studio y conéctese a la instancia de MS SQL Server.
  2. Navegue hasta una base de datos en el Explorador de objetos y haga clic con el botón derecho del ratón en el nombre de la base de datos. Haga clic en Tareas > Generar scripts en el menú contextual.

    Generación de un script T-SQL

  3. Lea los consejos en el paso Introducción del asistente Generar guiones. Puede seleccionar la casilla No volver a mostrar esta página. Pulse Siguiente en cada paso del asistente para continuar.
  4. En el paso Elegir objetos, haga clic en Seleccionar objetos de base de datos específicos. Seleccione las tablas necesarias para hacer backup de. En este ejemplo, seleccionamos la tabla Person.Address de la base de datos para hacer backup de.

    Seleccionar una tabla MS SQL para hacer backup de

  5. Especifique cómo deben guardarse los scripts en el paso Establecer opciones de script. Seleccione Guardar como archivo de script y seleccione Archivo de script único. Introduzca un nombre de archivo para un backup en la carpeta correspondiente. Haga clic en para seleccionar una carpeta e introducir un nombre de backup de tabla MS SQL.

    Configuración de las opciones de secuencias de comandos

  6. Haga clic en Avanzado y, en la ventana abierta Opciones avanzadas de script, establezca Tipos de datos para script = Esquema y datos. Pulsa OK para guardar los ajustes y cerrar la ventana. A continuación, continúe con el siguiente paso del asistente.

    Configuración de opciones avanzadas de scripting

  7. Compruebe el resumen de la configuración y vaya al paso final del backup de la tabla de la base de datos.

    El resumen de configuración para generar un script de backups de tablas

  8. En el paso Guardar Scripts, puede ver el progreso del backup. Espere a que finalice el proceso de backups de la base de datos MS SQL.

    Cómo guardar un script para hacer backups de tablas

  9. Abra el Explorador de Windows y busque el archivo de backup de tablas MS SQL creado en el directorio de destino seleccionado. En este ejemplo, tenemos el archivo MS_SQL_Table_Backup.sql.

    Un script para hacer backup de tablas MS SQL se guarda como un archivo sql

  10. Haga doble clic en el archivo MS_SQL_Table_Backup.sql y abra este archivo de secuencia de comandos SQL en SSMS. Cambie el nombre de la base de datos en la primera línea para cumplir los requisitos de su entorno.

    Un script de backups de tablas

  11. Haga clic en Ejecutar para ejecutar el script de backups de tablas MS SQL.

Método 2: Utilice bcp (Programa de copia masiva)

Utilice el siguiente flujo de trabajo para hacer backups de tablas MS SQL con bcp:

  1. Abra el símbolo del sistema (pulse Win+R, escriba cmd y pulse Intro) en Windows con privilegios de administrador.
  2. Navegue hasta el ejecutable de la utilidad bcp en el directorio de instalación de MS SQL Server (se utiliza 160 para MS SQL Server 2022). Por ejemplo:

    cd C:\Program Files\Microsoft SQL Server\160\Tools\Binn

  3. Ejecute el comando bcp para exportar los datos de la tabla a un archivo. Sustituya <DatabaseName>, <SchemaName>, <TableName>, y <OutputFilePath> por su base de datos, esquema, tabla y ruta de salida deseados.

    bcp <Nombre de la base de datos>.<SchemaName>.<TableName> out <OutputFilePath> -c -S <ServerName> -T

    Dónde:

    -c – especifica los datos de caracteres (no Unicode) a copiar.

    -S <ServerName> – especifica el nombre del servidor.

    T: utiliza una conexión de confianza (autenticación de Windows).

  4. Comprueba el archivo de salida especificado para los datos exportados.

Cómo restaurar una base de datos SQL Server

Cuando se utilizan herramientas nativas de Microsoft para hacer backups de bases de datos MS SQL, estos backups suelen guardarse como archivos.bak. Para saber cómo abrir un archivo.bak, generalmente debe utilizar MS SQL Server Management Studio (SSMS), una herramienta proporcionada por Microsoft para gestionar bases de datos de MS SQL Server. Restaurar los datos de este backup a un estado normal. Sólo entonces podrás abrir los datos.

NOTA: Puede copiar un archivo backupname.bak, cambiar el nombre del archivo backupname.bak copiado a backupname.xls y abrir el archivo.xls en Microsoft Excel si necesita ver los datos de una copia de seguridad pero no tiene MS SQL Server instalado en ese momento. Copiar el archivo evita la corrupción del archivo de backup principal si algo sale mal.

Restauración de bases de datos MS SQL en SSMS

Tenga en cuenta que necesita los permisos necesarios para realizar una restauración de la base de datos y que la instancia de MS SQL Server debe poder acceder al archivo.bak.

Para restaurar una base de datos de MS SQL Server en MS SQL Server Management Studio a partir de un archivo de backups, haga lo siguiente:

  1. Inicie sesión en un MS SQL Server en SSMS utilizando una cuenta administrativa.
  2. Haga clic con el botón derecho del ratón en Bases de datos en el Explorador de objetos y haga clic en Restaurar base de datos en el menú contextual.

    Cómo restaurar una base de datos MS SQL a partir de un backup en MS SQL Management Studio

  3. En la ventana Restaurar base de datos, seleccione Dispositivo para restaurar una base de datos MS SQL a partir de un archivo. bak y haga clic en el botón para seleccionar el archivo. bak.

    Cómo abrir un archivo .bak para restaurar una base de datos MS SQL en SSMS

  4. Seleccione Archivo como tipo de medio de backup y pulse Añadir.

    Añadir un archivo de backups a partir del cual se debe restaurar una base de datos

  5. Localiza un archivo de backups. Por defecto, el directorio de backups por defecto se muestra en la ventana. Vaya al directorio necesario y seleccione el archivo de backups. En este ejemplo se selecciona el archivo AdventureWorks2022.bak.

    Selección de un archivo de backup de base de datos MS SQL con extensión bak

  6. Pulse Aceptar dos veces para guardar los ajustes y volver a la ventana Restaurar base de datos. SSMS mostrará el progreso de la operación de restauración. Puede supervisar el proceso en la ventana Progreso de la restauración.

    Listo para restaurar una base de datos en SSMS

Si todo es correcto, debería ver este mensaje después de restaurar una base de datos:

Base de datos ‘AdventureWorks2022’ restaurada con éxito.

Restauración de bases de datos MS SQL en T-SQL

Puede utilizar comandos T-SQL para restaurar una base de datos desde un archivo.bak utilizando la sentencia RESTORE DATABASE. Esto puede ser útil en scripts o escenarios donde SSMS no está disponible. Considere los siguientes comandos para restaurar una base de datos MS SQL en T-SQL.

  • Restauración completa de la base de datos:

    RESTORE DATABASE YourDatabaseName FROM DISK = 'C:\Backup\YourDatabaseName_Full.bak' WITH REPLACE;

    Sustituya YourDatabaseName por el nombre de su base de datos y especifique la ruta al archivo completo de backups. La opción WITH REPLACE es necesaria si va a sobrescribir una base de datos existente.

  • Restauración diferencial de bases de datos:

    RESTORE DATABASE YourDatabaseName FROM DISK = 'C:\Backup\YourDatabaseName_Diff.bak' WITH NORECOVERY;

    Después de restaurar el backup diferencial, puede que necesite restaurar backups adicionales del registro de transacciones para recuperar la base de datos hasta el último punto en el tiempo.

    • Para restaurar una copia de seguridad del registro de transacciones, utilice el siguiente comando T-SQL:

      RESTORE LOG YourDatabaseName FROM DISK = 'C:\Backup\YourDatabaseName_Log.bak' WITH NORECOVERY;

    • Repita este comando para cada backups del registro de transacciones en secuencia. Por último, ejecute el siguiente comando para poner en línea la base de datos:

      RESTORE DATABASE YourDatabaseName WITH RECOVERY;

    • Asegúrese de que los backups del registro de transacciones se aplican en el orden correcto.
  • Restauración de archivos o grupos de archivos:

    RESTORE DATABASE YourDatabaseName FILE = 'LogicalFileName' FROM DISK = 'C:\Backup\YourDatabaseName_File.bak' WITH REPLACE;

    Sustituya LogicalFileName por el nombre lógico del archivo o grupo de archivos.

  • Restaurar sólo copia:

    RESTORE DATABASE YourDatabaseName FROM DISK = 'C:\Backup\YourDatabaseName_CopyOnly.bak' WITH REPLACE, COPY_ONLY;

    La opción COPY_ONLY es necesaria para las restauraciones de sólo copia.

Microsoft SQL Backup & Recuperación con NAKIVO

NAKIVO Backup & Replication es una solución universal de protección de datos que permite hacer backups de máquinas que alojan bases de datos MS SQL. El backup de Microsoft SQL se crea cuando se hace backup de una máquina Windows desplegada como máquina física o máquina virtual. Así, puede proteger todo el servidor con las bases de datos Microsoft SQL que se ejecutan en el servidor. La solución NAKIVO permite recuperar toda la máquina física o VM, una base de datos Microsoft SQL concreta u objetos de base de datos. Este enfoque acelera el proceso de recuperación y permite una mayor flexibilidad durante la recuperación.

La ventaja de hacer backup de Microsoft SQL Server con la solución NAKIVO es la posibilidad de utilizar un enfoque incremental. Los backups incrementales aceleran el proceso de backups y ahorran espacio de almacenamiento. Las técnicas de compresión, cifrado y truncamiento de registros SQL racionalizan el consumo de espacio de almacenamiento y hacen que el proceso de backup sea rápido y seguro. Los jobs de backups se programan y automatizan.

Backup de servidor de alojamiento SQL: paso a paso con NAKIVO

Haga lo siguiente para hacer backup de una máquina Windows con su base de datos MS SQL en NAKIVO Backup & Replication:

  1. Abra la interfaz web de NAKIVO Backup & Replication en un navegador web.
  2. Asegúrese de que el servidor físico Windows o la máquina virtual necesarios con Microsoft SQL Server se han añadido al inventario de NAKIVO. Puede añadir máquinas físicas, servidores VMware vCenter, hosts ESXi y otros elementos al inventario accediendo a Ajustes > Inventario.

    Asegúrese de que hay suficiente espacio libre en un repositorio de backups para almacenar los backups.

    Se añade una máquina con MS SQL Server al inventario

  3. Cree un nuevo job de backups para la máquina en la que está instalado MS SQL Server. Con NAKIVO, puede hacer backup de la máquina con MS SQL Server en estado de ejecución. Haga clic en Jobs > + (Crear un nuevo job) y seleccione el tipo de job necesario. En este ejemplo hacemos backup de una máquina física y seleccionamos Physical machine backup job.

    Creación de un nuevo job para hacer backups de MS SQL Server en la solución NAKIVO

  4. Seleccione un equipo en el que esté instalado MS SQL Server en el primer paso del asistente para hacer un nuevo job de backups. Seleccionamos nuestro Windows Server 2022 con MS SQL Server 2022 instalado. Puede seleccionar varias máquinas en un job. Pulse Siguiente en cada paso del asistente para continuar.

    Seleccionar un equipo que ejecute MS SQL Server para hacer backup de

  5. Seleccione el repositorio de backups donde desea hacer backups. Puede seleccionar un repositorio local de backups o un repositorio de backups en la nube. Se recomienda utilizar primero un repositorio local y luego hacer una copia de backup de la nube o de otro repositorio para satisfacer la regla 3-2-1 de backups.

    Selección de un repositorio de backups para almacenar backups

  6. Seleccione las opciones de horario. Las últimas versiones de la solución NAKIVO utilizan un enfoque combinado de planificación y conservación. Puede configurar reglas de retención flexibles para los jobs de backups, incluyendo jobs para backups de bases de datos MS SQL. Establezca un nombre para cada horario.

    Configuración de un programa de backups para MS SQL Server

  7. Configura las opciones del job de backups. Introduzca un nombre de job, por ejemplo, MS SQL Server Backup Job 2022. Configure los ajustes de backups completos. Por defecto, se utilizan backups incrementales con backups completos periódicos. Los backups completos pueden ser Activo completo y Sintético completo. Pulse Finalizar o Finalizar & Ejecutar para ejecutar el job inmediatamente.

    Configurar las opciones del job de backups

  8. Espere a que el job de backups se complete.

Tenga en cuenta que NAKIVO Backup & Replication es compatible con el truncamiento de registros para Microsoft SQL Server, Exchange Server y Oracle Database para ahorrar espacio de almacenamiento en un servidor de origen después de hacer backups.

Restauración de bases de datos SQL con NAKIVO

El proceso de restauración de bases de datos MS SQL en NAKIVO Backup & Replication es sencillo. Puede restaurar toda la máquina física o virtual junto con una base de datos. También puede utilizar las funciones de recuperación granular y restaurar sólo los objetos de la base de datos (toda la base de datos, tablas, etc.).

Haga lo siguiente para recuperar una base de datos MS SQL o determinados objetos de base de datos en NAKIVO Backup & Replication:

  1. En la interfaz web de la solución NAKIVO, vaya a Jobs > Recover > Microsoft SQL Server objects.

    Cómo empezar a recuperar objetos de Microsoft SQL Server a partir de una copia de seguridad

  2. En el primer paso del Asistente de recuperación de objetos para Microsoft SQL Server, seleccione una copia de seguridad de su equipo con la base de datos de MS SQL Server y seleccione un punto de recuperación. Asegúrese de que la casilla Localizar automáticamente las bases de datos de aplicaciones está seleccionada. Pulse Siguiente en cada paso del asistente de recuperación para continuar.

    Selección de un punto de recuperación para recuperar objetos de bases de datos MS SQL.

  3. Seleccione un servidor de recuperación. Un servidor de recuperación puede ser el servidor original utilizado como fuente para crear el backup o una nueva máquina sin la base de datos que se está restaurando. Seleccionamos el servidor original para recuperar la base de datos.
    • Introduzca las credenciales del servidor de recuperación y haga clic en Probar conexión.
    • Seleccione una instancia SQL en este servidor después de establecer una conexión con éxito.

      Selección de un servidor de recuperación para una base de datos MS SQL

    • En el paso Objetos del asistente de recuperación, seleccione la base de datos que desea recuperar (un archivo.mdf ).

      Seleccionar un archivo de base de datos de una copia de seguridad

      Si no necesita restaurar toda la base de datos, haga clic en el icono > en el panel izquierdo junto al nombre de la base de datos para expandir el objeto de base de datos y seleccionar los objetos de base de datos concretos que desea recuperar.

      Selección de objetos de base de datos individuales para recuperar

  4. Defina las opciones del job de recuperación a partir de las opciones que se indican a continuación:

    Ámbito de recuperación:

    • Recuperar el esquema y los datos
    • Recuperar sólo el esquema

    Tipo de recuperación:

    • Recuperar la ubicación original
    • Recuperar en una ubicación personalizada
    • Exportar

    Comportamiento de sobrescritura:

    • Renombrar el elemento recuperado si existe (por defecto)
    • Omitir elemento recuperado si existe
    • Sobrescribir el elemento original si existe

    Configuración de las opciones de recuperación de bases de datos MS SQL en NAKIVO Backup & Replication

    Pulse Recuperar y espere hasta que se recupere la base de datos o los objetos de base de datos seleccionados.

Try NAKIVO Backup & Replication

Try NAKIVO Backup & Replication

Get a free trial to explore all the solution’s data protection capabilities. 15 days for free. Zero feature or capacity limitations. No credit card required.

Artículos recomendados