Summary: Cuando ejecute el comando DBCC CHECKDB para reparar una base de datos corrupta, es posible que reciba el mensaje de error 8930. En este artículo, aprenderá a solucionar el mensaje de error 8930 en SQL Server. También conocerá un software avanzado de reparación de bases de datos SQL que puede utilizar para reparar fácilmente tanto bases de datos corruptas como archivos de copia de seguridad.
MS SQL Server proporciona comandos DBCC CHECKDB para comprobar y reparar bases de datos dañadas. Sin embargo, cuando ejecuta este comando para reparar la base de datos, a veces falla y muestra un mensaje de error. El mensaje de error puede tener este aspecto
Msg 8930, nivel 16, estado 1, línea 1 Error de base de datos: La base de datos 1 tiene metadatos inconsistentes. Este error no puede corregirse e impide continuar con el proceso DBCC. Por favor, restaure desde una copia de seguridad.
El mensaje de error indica que un daño en los metadatos ha provocado el fallo del comando DBCC. Los metadatos contienen los catálogos y la información sobre las tablas. Almacenan información sobre la estructura y los objetos de la base de datos. Por ejemplo, las tablas de sistema contienen información sobre las tablas de usuario y la tabla de vistas sys.objects contiene información sobre tablas, procedimientos almacenados, vistas y otros objetos.
Este error puede producirse por varias razones, por ejemplo, debido a daños en el hardware, un error de software, etc. Echemos un vistazo a cómo puede solucionar este error y restaurar los datos de una base de datos dañada.
¿Cómo puedo solucionar el error MS SQL 8930?
Si los metadatos están dañados, no podrá trabajar con la base de datos. Lamentablemente, no podrá reparar la base de datos con el comando DBCC si se produce este problema. Por lo tanto, deberá restaurar los datos a partir de la copia de seguridad.
La copia de seguridad es un archivo que contiene una copia de los datos y también incluye los metadatos de las bases de datos de SQL Server. Puede restaurar la base de datos hasta la fecha de la copia de seguridad. Si dispone de un registro de transacciones, puede restaurar los datos introduciendo la fecha y la hora.
Para restaurar la base de datos a partir de la copia de seguridad, siga los pasos indicados:
- Abra SQL Server Management Studio (SSMS).
- Conéctese a la instancia de SQL Server.
- En el Explorador de objetos, haga clic con el botón derecho en la opción Bases de datos y seleccione la opción Restaurar base de datos.
- Seleccione la opción Dispositivo y, a continuación, haga clic en las elipses (…) para buscar el archivo de copia de seguridad.
- Haga clic en Añadir y busque la ubicación donde se encuentra su archivo de copia de seguridad (.bak).
- Seleccione el archivo y pulse OK.
- Vuelva a pulsar Aceptar para cerrar la ventana Seleccionar dispositivos de copia de seguridad.
- Haga clic en Aceptar para restaurar la copia de seguridad de la base de datos.
Alternativamente, también puede utilizar el siguiente comando Transact-SQL para restaurar la copia de seguridad de la base de datos:
USE [master];
GO
RESTORE DATABASE [StellarDB]
FROM DISK = N’C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Backup\StellarDB.bak’ WITH FILE = 1, NOUNLOAD, STATS = 5;
GO
¿Qué ocurre si la copia de seguridad no está disponible?
Si la copia de seguridad está dañada o no está disponible, la única opción es reparar la base de datos o el archivo de copia de seguridad dañados utilizando un software de reparación de bases de datos SQL de terceros como Stellar Repair for MS SQL – Technician. Este software puede reparar fácilmente el archivo de copia de seguridad de la base de datos SQL Server corrupto y restaurar todos los objetos con total integridad.
Para reparar el archivo de copia de seguridad de la base de datos SQL con el software, proceda como se indica a continuación:
- Abra el programa y seleccione la opción Extraer de la copia de seguridad de MSSQL.
- Haga clic en el icono Seleccionar copia de seguridad.
- Aparecerán dos opciones: Buscar y Examinar. Puede utilizar la opción Buscar para buscar el archivo de copia de seguridad si desconoce su ubicación. De lo contrario, puede hacer clic en el botón Examinar y seleccionar el archivo de copia de seguridad.
- Una vez seleccionado el archivo de copia de seguridad, pulse el botón Escanear.
- Seleccione el modo de escaneado Estándar.
- Seleccione los datos que desea restaurar y pulse Siguiente. Si sólo desea restaurar algunas tablas, puede seleccionar tablas individuales.
- A continuación, pulse el botón Guardar.
- Puede guardar los datos en,
- Nueva base de datos
- Base de datos viva (una base de datos existente)
- Otros formatos, como Excel, CSV, etc. (para guardar los datos de determinadas tablas)
Conclusión
El error 8930 se produce cuando intenta reparar una base de datos corrupta mediante el comando DBCC CHECKDB en SQL Server. Esto ocurre cuando los metadatos están corruptos o dañados. En tal caso, no puede reparar la base de datos con el comando DBCC CHECKDB. Así que la única opción es restaurar la base de datos a partir de una copia de seguridad reciente y en buen estado. Sin embargo, si la copia de seguridad no está disponible o está dañada, puede utilizar Stellar Repair for MS SQL para reparar la base de datos dañada o la propia copia de seguridad.