将数据库从Azure MI还原到本地计算机以获取机密数据的可用选项

问题描述 投票:1回答:1

我需要备份Azure托管实例中存在的SQL数据库,并将其还原到本地服务器上以进行根本原因分析。每当我们在数据库上遇到某个错误时,都需要执行此操作。由于自动备份启用了TDE,因此有哪些可用选项可在本地计算机上还原数据库?

在浏览时,我遇到了两个选项,但其中需要一些指导。

一个选项是在数据库上禁用TDE,备份数据库,然后启用TDE。但是使用此选项时,备份文件将不会采用加密格式,并且由于我们拥有机密数据,因此这似乎不是一个安全的解决方案。我们是否可以选择使用我们自己的加密来备份数据库,然后将其用于本地计算机上的还原?

第二个获取数据的选项是使用BACPAC文件。但是同样,他们也遭受相同的安全问题。我们可以在创建bacpac文件时对其进行加密,而在加载到本地服务器时可以对其进行解密吗?

请告知是否还有其他选择。

azure-sql-database database-backups tde bacpac
1个回答
0
投票

最大的考虑是,您将无法使用二进制备份(BACKUP DATABASE命令)将数据库从任何SQL Azure产品(包括托管实例)传输到内部部署。原因是Azure SQL DB中的软件不断更新,因此Azure SQL DB(或托管实例)中运行的版本将始终领先于内部运行的版本。

[ SQL的前提版本赶上了用于创建备份的软件。因此,存在更多的障碍,而不仅仅是TDE问题。

毕竟,您最好的选择是使用bacpac。您可以创建Azure SQL数据库的bacpac并将其存储在本地计算机上。默认情况下,Azure内部或外部的所有信息都是加密的。

SqlPackage /Action:Export /SourceServerName:SampleSQLServer.sample.net,1433 /SourceDatabaseName:SampleDatabase /TargetFile:"F:\Temp\SampleDatabase.bacpac"

© www.soinside.com 2019 - 2024. All rights reserved.