我以前做过这种事,现在我需要再做一次。激活TDE。
我记得我不需要恢复辅助服务器上的主键来恢复数据库。
现在,由于我的内存不好,我正在对sintax、备份和还原等进行数十次测试,以确保在启用数据库中的TDE之后,我们不会弄乱任何东西。
在创建MASTER KEY之后,然后是CERTIFICATE,然后是DATABASE ENCRYPTION KEY,我只需要备份CERTIFICATE,如下所示:
USE MASTER
GO
BACKUP CERTIFICATE CERTIFICATE_I_HATE_TDE
TO FILE ='C:\tde_backups\CERTIFICATE_I_HATE_TDE.CER'
WITH PRIVATE KEY ( FILE ='C:\tde_backups\CERTIFICATE_I_HATE_TDE_PRIVATE_KEY.PVK',
ENCRYPTION BY PASSWORD='123superHardPassword')然后,我使用ALTER DATABASE SET ENCRYPTION ON启用加密。
在此之后,我备份数据库,为了在另一个服务器中恢复,我创建了一个证书FROM FILE,它指向旧的证书(即指向新服务器的CTRL+C / CTR+V )。
在此之后,我可以恢复数据库,而无需还原MASTER KEY或SERVICE MASTER KEY。
我问这个问题是因为我正在读这个红门链接,上面写着备份主键,但是我会在哪里使用它呢?
还有另一个问题。在MASTER数据库中创建主密钥和证书与在数据库本身中创建主密钥和证书有什么区别(我将使用TDE)?
编辑:错误删除。
发布于 2021-01-28 13:17:31
主密钥用于保护每个TDE数据库的所有证书的私钥和非对称密钥。与此相关的是,它存在于您的服务器上,以达到最佳的安全性并防止有人访问您的TDE数据库的密钥,并且通过Microsoft的设计,主密钥同时存在于TDE数据库和master数据库中。
证书还会在master数据库中创建,以便您想要应用TDE的用户数据库可以使用它。数据库加密密钥将在应用TDE的用户数据库中创建,并使用来自master数据库的全局证书。
有关更多信息,这些MicrosoftDocs-服务器和数据库加密密钥(数据库引擎)澄清了主密钥的用途以及它的存储位置,特别是数据库主密钥部分。此外,关于透明数据加密的文档提供了很好的详细信息,并展示了在master数据库中创建主密钥的示例,但是在应用TDE的用户数据库中创建证书。
发布于 2021-01-28 13:48:20
有一个罕见的情况,您确实需要恢复SMK。
发布于 2021-01-28 13:58:29
您是正确的,TDE加密的数据库可以还原到另一个服务器,而不需要将SMK和MASTER KEY (在主数据库中)还原到另一个服务器。
从证书备份文件在另一个服务器上(在主服务器中)创建SERVER certificate,就足以将TDE加密的数据库备份还原到另一个服务器。
备份SMK和MASTER KEY只是一种建议,只有当您想要完全按照原来的方式重新构建服务器时才需要它,而TDE并不是必需的。
还有另一个问题。在主数据库中创建主密钥和证书与在数据库中创建主密钥和证书有什么区别(我将使用TDE)?
根据这个链接,要创建DEK,您需要的是SERVER certificate (主服务器中的),而不是用户数据库中的证书。
https://dba.stackexchange.com/questions/284157
复制相似问题