针对服务器A上的TEST数据库恢复到服务器B中的具体操作步骤:
一.首先在服务器A上建立加密。
1.主数据库上创建数据库主钥.
USE master
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '123456789'
2.创建基于服务器的证书
CREATE CERTIFICATE TEST1Cert
WITH SUBJECT = 'My DEK Certificate for TEST1 database'
3.用步骤2创建的证书创建一个数据库加密密钥。
USE TEST1
GO
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_128
ENCRYPTION BY SERVER CERTIFICATE TEST1Cert
GO
4.激活数据库级别的加密
ALTER DATABASE TEST1
SET ENCRYPTION ON
5.备份这个加密的TEST1 数据库
6.导出证书
USE master
GO
BACKUP CERTIFICATE TEST1Cert
TO FILE = 'D:\TEST1Cert_File.cer'
WITH PRIVATE KEY (FILE = 'D:\TEST1Cert_Key.pvk' ,
ENCRYPTION BY PASSWORD = 'mY_P@$$w0rd' )
GO
7.复制证书及密钥到U盘.
二.另外一台服务器B进行解密及恢复备份
1.主数据库上创建数据库主钥.
USE master
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '123456'
这里提供的密码与你在上一个服务器实例中用到的密码是不同的
2.导入我们之前创建的证书来创建一个证书。
USE master
GO
CREATE CERTIFICATE SDB_Cert
FROM FILE=N'L:\20150429\TEST1Cert_File.cer'
WITH PRIVATE KEY
(
FILE=N'L:\20150429\TEST1Cert_Key.pvk',
DECRYPTION BY PASSWORD=N'mY_P@$$w0rd'
)
GO
注意,这里在DECRYPTION BY PASSWORD参数中指定的密码是和我们在导出这个证书到一个文件中所使用的一样。
3.恢复数据库备份操作.