Hola Begoña,
¡Bienvenido(a) a Microsoft Q&A!
El error que estás experimentando puede ser por varios factores. Ten en cuenta que la opción VERIFY_CLONEDB
desactiva automáticamente las opciones NO_STATISTICS
y NO_QUERYSTORE
. Esto significa que al usar VERIFY_CLONEDB
, no se incluirán estadísticas ni datos del Query Store en la base de datos clonada.
Por lo cual un error común relacionado con DBCC CLONEDATABASE
es la inserción de filas duplicadas en objetos del sistema, como sys.syssingleobjrefs
. Esto puede ocurrir si hay objetos de usuario en la base de datos modelo (model
) que están causando conflictos.
Yo te recomendaría revisar lo siguiente:
Verifica la Base de Datos Modelo:
- Asegúrate de que no haya objetos de usuario (tablas, índices, esquemas, roles, etc.) en la base de datos
model
. Si hay objetos de usuario, considera eliminarlos antes de ejecutar el comandoDBCC CLONEDATABASE
.
Actualiza SQL Server:
- Asegúrate de que tu instancia de SQL Server esté completamente actualizada con los últimos parches y actualizaciones acumulativas. Aunque mencionas que tienes SP3, verifica si hay actualizaciones adicionales disponibles.
Comando de Verificación:
- Puedes usar el siguiente comando para verificar si la base de datos clonada ha sido verificada correctamente:
sql SELECT DATABASEPROPERTYEX('nombre_base_datos_clonada', 'IsVerifiedClone');
Ejecuta el Comando sin la Opción VERIFY_CLONEDB:
- Intenta ejecutar el comando sin la opción
WITH VERIFY_CLONEDB
para ver si el problema persiste:DBCC CLONEDATABASE (NombreDeTuBaseDeDatos, NombreDeTuBaseDeDatos_Clonada);
Revisa Objetos en la Base de Datos Modelo:
- Asegúrate de que no haya objetos de usuario en la base de datos
model
que puedan estar causando conflictos. Si encuentras objetos de usuario, considera eliminarlos.
Actualiza Compatibilidad:
- Asegúrate de que la base de datos esté configurada con un nivel de compatibilidad adecuado. Puedes verificar y cambiar el nivel de compatibilidad con los siguientes comandos:
SELECT compatibility_level FROM sys.databases WHERE name = 'NombreDeTuBaseDeDatos';
ALTER DATABASE NombreDeTuBaseDeDatos SET COMPATIBILITY_LEVEL = 130; -- Para SQL Server 2016
Espero que la información haya sido de ayuda, quedo a la espera de tu respuesta.
Atentamente,
Gao
Si esta respuesta resolvió tu consulta, por favor haz clic en 'Aceptar respuesta'. Esto nos ayuda a mejorar continuamente la calidad y relevancia de nuestras soluciones.