Windows Server: Recuperación de bases de datos MSDB de Microsoft SQL Server

Summary: Información sobre cómo recuperar una base de datos MSDB de Microsoft SQL Server.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Cuando se daña y corrompe, es posible que una base de datos MSDB de Microsoft SQL Server no esté en línea y operativa. El servicio del Agente SQL Server no se inicia y los trabajos programados no se ejecutan de forma automática o manual.

Cause

El daño al archivo de la base de datos de SQL Server puede ocurrir por muchas razones diferentes. La mayoría de los eventos de bases de datos MSDB dañadas de Microsoft SQL Server ocurren debido a problemas de hardware relacionados con problemas de memoria, disco o procesador.

Resolution

Existen tres métodos para recuperar bases de datos MSDB de Microsoft SQL:
  1. Restauración a partir de un respaldo
  2. Utilice DBCC CheckDB para reparar la base de datos MSDB
  3. Reemplazar los archivos de base de datos MSDB
Restauración de base de datos MSDB desde respaldo:
El proceso de restauración mediante SQL Server Management Studio requiere un respaldo actual y se puede realizar yendo a las propiedades de la base de datos "msdb", Tareas >Restaurar >base de datos y señalando la ubicación de los medios de respaldo.
 
Muestra los pasos de SQL Server Studio Manager para restaurar la base de datos MSDB.

Utilice DBCC CheckDB para la reparación de la base de datos:
Si no hay ningún respaldo disponible, podemos ejecutar DBCC CheckDB para guardar la base de datos MSDB actual y su contenido. Los siguientes comandos T-SQL comprueban la integridad de la base de datos MSDB. Ejecute una reparación parcial de la base de datos MSDB y, por último, una reparación física de la base de datos MSDB:
  • Comprobación de integridad de la MSDB; ¿La base de datos está libre de corrupción?
Ejecute el siguiente comando en la ventana de consulta de SSMS:
USE Master;
      GO
        ALTER Database MSDB
        SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
        GO
        DBCC CHECKDB (msdb, NOINDEX);
        GO
        ALTER DATABASE MSDB
        SET-MULTI_USER;
        GO
Debemos verificar la línea en la parte inferior de la ventana de devolución que informa errores de "asignación" y "coherencia". Una base de datos MSDB dañada informa un error y requiere los siguientes comandos CHECKDB de DBCC para su reparación.
 
Resultados de DBCC CHECkDB cuando se comprueban errores de coherencia.
  • Comando MSDB T-SQL para un intento de "recuperación de software" sin pérdida de datos:
Ejecute el siguiente comando en la ventana de consulta de SSMS:
USE Master;
      GO
        ALTER Database MSDB
        SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
        GO
        DBCC CHECKDB (msdb, REPAIR_REBUILD);
        GO
        ALTER DATABASE MSDB
        SET-MULTI_USER;
        GO
Después de ejecutar el comando anterior, vuelva a ejecutar DBCC CheckDB para ver el nuevo estado de la base de datos.
  • Comando MSDB T-SQL para un intento de "recuperación forzada" con posible pérdida de datos:
Ejecute el siguiente comando en la ventana de consulta de SSMS:
USE Master;
      GO
        ALTER Database MSDB
        SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
        GO
        DBCC CHECKDB (msdb, REPAIR_ALLOW_DATA_LOSS);
        GO
        ALTER DATABASE MSDB
        SET-MULTI_USER;
        GO
Después de ejecutar el comando anterior, vuelva a ejecutar DBCC CheckDB para ver el nuevo estado de la base de datos.

Reemplace los archivos de base de datos MSDB.
Si la base de datos MSDB está dañada y las opciones de reparación de DBCC no funcionan, coloque una nueva base de datos MSDB en y reemplace los archivos de la base de datos MSDB.

Cuando reemplazamos los archivos de la base de datos MSDB, perdemos toda la información, como los trabajos de respaldo personalizados, la información de tareas, la replicación, el trasvase de registros y los datos del plan de mantenimiento.

Los siguientes pasos se utilizan para reemplazar una base de datos MSDB existente por una nueva base de datos MSDB predeterminada.
  • Vaya al directorio de instalación de SQL Server y vaya a la carpeta Templates en el directorio Binn:
Mostrar la ubicación del archivo de la base de datos MSDB y las plantillas de registro.

Los archivos msdbdata.mdf y msdblog.ldf son los archivos de plantilla de base de datos MSDB para los que debemos abrir una nueva base de datos MSDB estable.
  • Debemos detener el servicio de SQL Server para reemplazar los archivos de base de datos MSDB existentes.
Se muestra la ubicación en SQL Server Management Studio donde se puede iniciar o detener el servicio de SQL Server.
  • Vaya al directorio de datos de SQL Server. La ruta del directorio en el siguiente ejemplo es C:\Program Files\Microsoft SQL Server\MSSQL15.SQL2019\MSSQL\DATA
Ruta del directorio de datos de SQL Server
 
  • Busque los archivos "msdbdata.mdf" y "msdblog.ldf" corruptos.
Muestra la ubicación predeterminada de la base de datos MSDB y del archivo de registro en el directorio de aplicaciones de SQL Server.
  • Copie y mueva los archivos a otro directorio; En este caso, los movemos a una carpeta llamada "MSDB_Save". Existe la posibilidad de que estos archivos se puedan importar a otra instalación de SQL Server y volver a comprobarse con DBCC CHECKDB; No es una práctica recomendada eliminar los archivos de base de datos dañados durante la solución de problemas.
                Se muestra una ubicación para almacenar archivos de base de datos MSDB dañados.
  • Busque dónde se guardan los archivos de la base de datos temporal de MSDB y vuelva a colocar una copia de ellos en nuestro directorio de base de datos predeterminado de SQL Server:
Ubicación de las plantillas de archivo de base de datos MSDB de SQL Server
  • Ubicación final para los archivos temporales de la base de datos MSDB; en el directorio de datos predeterminado de C:\Program Files\Microsoft SQL Server\MSSQL15.SQL2019\MSSQL\DATA.
Active Directory para archivos de base de datos MSDB
  • Después de reemplazar los archivos de base de datos MSDB, inicie el servicio de SQL Server.
Se muestra en qué parte de SQL Server Management Studio se puede reiniciar el servicio de SQL Server.
 

Affected Products

Microsoft Windows Server 2016, Microsoft Windows Server 2019, Microsoft Windows Server 2022, Microsoft Windows Server 2025

Products

C Series, HS Series, Modular Infrastructure, Tower Servers, PowerEdge R240, PowerEdge R250, PowerEdge R260, PowerEdge R340, PowerEdge R350, PowerEdge R360, PowerEdge R440, PowerEdge R450, PowerEdge R540, PowerEdge R550, PowerEdge R640 , PowerEdge R6415, PowerEdge R650, PowerEdge R650xs, PowerEdge R6515, PowerEdge R6525, PowerEdge R660, PowerEdge R660xs, PowerEdge R6615, PowerEdge R6625, PowerEdge R740, PowerEdge R740XD, PowerEdge R740XD2, PowerEdge R7415, PowerEdge R7425, PowerEdge R750, PowerEdge R750XA, PowerEdge R750xs, PowerEdge R7515, PowerEdge R7525, PowerEdge R760, PowerEdge R760XA, PowerEdge R760xd2, PowerEdge R760xs, PowerEdge R7615, PowerEdge R7625, PowerEdge R840, PowerEdge R860, PowerEdge R940, PowerEdge R940xa, PowerEdge R960 ...
Article Properties
Article Number: 000200606
Article Type: Solution
Last Modified: 05 Sep 2025
Version:  9
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.