SQL-加密数据库

SQL-加密数据库

我已经从实时环境中获取备份并尝试在本地机器上使用它。实时中的数据库已使用密钥加密。

我已将数据库还原到 localbox,但无法运行任何存储过程,因为我遇到以下问题

Please create a master key in the database or open the master key in the session before performing this operation.

有人遇到过这个问题吗?你是如何解决的?你能一步一步提供答案吗?

我知道实时数据库加密的密码。

答案1

现场的数据库是用密钥加密的。

我认为你的意思是数据库正在使用透明数据库加密。将 TDE 数据库移动到另一台服务器的过程描述如下将 TDE 保护的数据库移动到另一个 SQL Server,它涉及通过备份用于加密 TDE 密钥的证书来明确移动数据库加密密钥,该证书先前从实时服务器备份:

在实时服务器上:

BACKUP CERTIFICATE ...
TO FILE = '...'
WITH PRIVATE KEY 
(
    FILE = '...',
    ENCRYPTION BY PASSWORD = ...'
);
GO

在本地服务器上:

CREATE CERTIFICATE ...
FROM FILE = '...'
WITH PRIVATE KEY 
(
    FILE = '...',
    DECRYPTION BY PASSWORD = '...'
);
GO

有了证书,本地 SQL Server 将能够解密 TDE 数据库。

如果您不是在谈论 TDE,那么您需要解释“数据库用密钥加密”是什么意思。

相关内容