将 Azure SQL 数据库的备份还原到另一个资源组的另一个 Azure SQL 数据库
Restore backup of an Azure SQL Database to another Azure SQL Database of another resource group
我需要将生产数据库的所有数据移动到其暂存版本。
这 2 个数据库是来自 2 个不同资源组的 Azure SQL 数据库。
我已经阅读了一些关于如何实现这种导出和导入 .bacpac 文件的指南,但是这种方法不允许导入到现有数据库中。
我正在寻找一种无需创建新数据库即可迁移数据的方法,但以现有数据库为目标。
Azure SQL 数据库没有我们在 SQL 服务器上知道的备份和还原(WITH REPLACE 选项)。我们也无法导出数据库并将其导入现有数据库。
您可以使用新名称导入然后删除现有数据库,并将导入的数据库的名称重命名为删除的数据库的名称。
您还可以使用 Azure SQL Data Sync 的初始同步将所有数据从一个数据库迁移到另一个数据库。您的数据库不仅可以位于不同的资源组中,还可以位于不同的订阅中。初始同步在空数据库上运行得更快。
如果这是一次性任务,您可以使用 SMMS 导出您的数据库并将其恢复到另一个 server/new 数据库。
您还可以获取频繁请求的备份并将它们作为 .bak 存储到 Azure 存储帐户并从中恢复。
您可以使用类似于此处给出的自动化 runbook/powershell 脚本:
https://www.powershellgallery.com/packages/Backup-SQLAzureDb/0.2.0
如果两个数据库都在 Azure 上SQL您可以使用简单的 powershell 命令 directlay 复制到新服务器
New-AzSqlDatabaseCopy -ResourceGroupName "<resourceGroup>" -ServerName $sourceserver -DatabaseName "<databaseName>" `
-CopyResourceGroupName "myResourceGroup" -CopyServerName $targetserver -CopyDatabaseName "CopyOfMySampleDatabase"
New-AzSqlDatabaseCopy -ResourceGroupName "<resourceGroup>" -ServerName $sourceserver -DatabaseName "<databaseName>" `
-CopyResourceGroupName "myResourceGroup" -CopyServerName $targetserver -CopyDatabaseName "CopyOfMySampleDatabase"
或者使用TSQL命令的副本:
CREATE DATABASE Database2 AS COPY OF server1.Database1;
我需要将生产数据库的所有数据移动到其暂存版本。 这 2 个数据库是来自 2 个不同资源组的 Azure SQL 数据库。
我已经阅读了一些关于如何实现这种导出和导入 .bacpac 文件的指南,但是这种方法不允许导入到现有数据库中。
我正在寻找一种无需创建新数据库即可迁移数据的方法,但以现有数据库为目标。
Azure SQL 数据库没有我们在 SQL 服务器上知道的备份和还原(WITH REPLACE 选项)。我们也无法导出数据库并将其导入现有数据库。
您可以使用新名称导入然后删除现有数据库,并将导入的数据库的名称重命名为删除的数据库的名称。
您还可以使用 Azure SQL Data Sync 的初始同步将所有数据从一个数据库迁移到另一个数据库。您的数据库不仅可以位于不同的资源组中,还可以位于不同的订阅中。初始同步在空数据库上运行得更快。
如果这是一次性任务,您可以使用 SMMS 导出您的数据库并将其恢复到另一个 server/new 数据库。
您还可以获取频繁请求的备份并将它们作为 .bak 存储到 Azure 存储帐户并从中恢复。 您可以使用类似于此处给出的自动化 runbook/powershell 脚本:
https://www.powershellgallery.com/packages/Backup-SQLAzureDb/0.2.0
如果两个数据库都在 Azure 上SQL您可以使用简单的 powershell 命令 directlay 复制到新服务器
New-AzSqlDatabaseCopy -ResourceGroupName "<resourceGroup>" -ServerName $sourceserver -DatabaseName "<databaseName>" `
-CopyResourceGroupName "myResourceGroup" -CopyServerName $targetserver -CopyDatabaseName "CopyOfMySampleDatabase"
New-AzSqlDatabaseCopy -ResourceGroupName "<resourceGroup>" -ServerName $sourceserver -DatabaseName "<databaseName>" `
-CopyResourceGroupName "myResourceGroup" -CopyServerName $targetserver -CopyDatabaseName "CopyOfMySampleDatabase"
或者使用TSQL命令的副本:
CREATE DATABASE Database2 AS COPY OF server1.Database1;