将 SQL Azure 数据库复制到不同的服务器

10

SQL Azure数据库支持使用以下单个命令异步复制整个数据库:

我一直在使用以下方式在同一服务器内复制数据库

CREATE DATABASE [targetdb] AS COPY OF [sourcedb]

但是当我尝试将数据库复制到另一个SQL Azure服务器时:

CREATE DATABASE [targetdb] AS COPY OF [source_sql_azure_server].[sourcedb]

但是我收到以下错误:

无法打开登录所请求的服务器“source_sql_azure_server”。登录失败。

我该如何复制?

4个回答

19

在同一地区,1GB的数据库速度有多快? - Artyom
@Artyom 现在运行约5分钟 - Artyom

4
要在两个不同的服务器之间执行数据库复制,必须连接到目标 SQL Azure 服务器的主数据库,并具有正确的权限。
源服务器和目标服务器上必须存在完全相同的登录名/密码,并且该登录名必须在源服务器上具有 db_owner 权限,在目标服务器上具有 dbmanager 权限。

此处可阅读更多信息:http://msdn.microsoft.com/en-us/library/ff951624.aspx


0

我想还有另一种方法可以在不同地区实现另一个副本。您可以将异步复制到不同的服务器和地区,并使其成为主服务器。


2
为了回答完整,我们应该如何实现这个功能。例如,等等。 - Anthony Horne

0

这应该能解决你五年前的问题!:)

   $dblist = @("db1","db2","db3")
   $sourceserver = "azureDBserversource"
   $targetserver = "azureDBserverTarget"
   $sourceRG = "mySourceRG"
   $targetRG = "myTargetRG"

    foreach ($db in $dblist) {
            New-AzSqlDatabaseCopy -ResourceGroupName $sourceRG `
                -ServerName $sourceserver `
                -DatabaseName $db `
                -CopyResourceGroupName  $targetRG `
                -CopyServerName $targetserver `
                -CopyDatabaseName $db
            }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接