从服务器中删除 TDE

Tsu*_*asa 5 sql-server sql-server-2012 transparent-data-encryption

我已经从我的服务器中删除了透明数据加密 (TDE),删除了密钥并将数据库切换到Simple,缩小了日志,然后又回到Full

LOG 备份现在和完整备份一样更小,但在删除 TDE 后,主 mdf 文件的大小仍然相同。

这是正常的吗?有没有办法让这些恢复到 TDE 之前的状态?

我知道 MDF 文件将保持相同的大小,直到您缩小它们,但我原以为内部可用空间会显着增加,但事实并非如此。TDE 似乎使它们的大小增加了一倍。

Jam*_*son 7

是的,这是正常的。SQL Server 仅在您AUTO SHRINK打开电源并且文件中有可用空间时才会自动减小数据文件的大小。不建议使用此设置,因为它会引入大量碎片并消耗大量 IO 资源。

你可以用DBCC SHRINKDATABASE. 请参阅此处了解更多信息。这会引入碎片,但可以通过重建索引来修复。

恕我直言,主要考虑因素是:

  • 你能忍受数据库的当前大小吗?如果是,那么缩小可能不值得付出努力。
  • 您是否有足够长的维护窗口来缩小和修复碎片?您可以通过将备份恢复到指定的类似机器并运行该过程来测试此过程。

如果您有任何列存储索引,当前缩小数据库将失败。如果您想尽可能地缩小数据库,则需要删除这些。

  • 我会尝试在其他地方恢复数据库的备份并运行收缩以查看实际结果。如果在收缩之前重建任何碎片索引,您可能会获得更好的结果。 (2认同)