Problema
Al intentar restaurar una copia de seguridad de sql Server en otra instancia aparece el siguiente mensaje de error:
Excepción al ejecutar una instrucción o un proceso por lotes Transact-SQL. No se encuentra el servidor certificado con la huella digital
Mensaje de Error al ejecutar script de restauraciòn de base de datos.
Mens. 33111, Nivel 16, Estado 3, Línea 2 No se encuentra el servidor certificado con la huella digital '0xF65BFAC0A270B5818A1C219EEA88383BFA56AF27'. Mens. 3013, Nivel 16, Estado 1, Línea 2 Fin anómalo de RESTORE DATABASE.
Solución
- La copia de seguridad que se está intentando recuperar está cifrada.
- Crear una clave maestra de base de datos para la base de datos maestra, no es necesario que sea la misma clave maestra de la base de datos que se usó en la instancia original.
- Crear un certificado o clave a partir de una copia de seguridad, para crear un certificado o clave a partir de la copia de seguridad que creó de la clave original utilizada para cifrar la base de datos utilizar el siguiente comando:
--Crear una clave maestra. CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Pa$$w0rd'; --Restaurar el Certificado desde un backup. CREATE CERTIFICATE Certificado FROM FILE = 'C:\Backups\BackupCertificado.cer' WITH PRIVATE KEY ( DECRYPTION BY PASSWORD = 'CertificadoPa$$w0rd', FILE = 'C:\Backups\Backup.key');
El nuevo certificado o clave debe tener el mismo nombre que el original y, si usó; un certificado, debe restaurar tanto el certificado público como la clave privada.
- Restaurar la base de datos. Ahora que la clave de cifrado está disponible en la instancia de SQL Server, ya se puede restaurar la base de datos con normalidad.
--Restaurar la base de datos cifrada RESTORE DATABASE AdventureWorks FROM DISK = 'C:\Backups\Backup_AdventureWorks_cifrado.bak'
Añadir nuevo comentario