在超大规模数据库上替代New-AzSqlDatabaseCopy

时间:2019-10-15 15:16:15

标签: azure powershell azure-sql-database azure-automation

我正在Microsoft Azure上工作,在Microsoft Azure中我有一组用于测试环境和生产环境的资源,在这两者中,我都有一个Azure SQL数据库数据库服务器及其相应的数据库。 我正在另一个Microsoft Azure帐户(重要说明)中的Powershell中创建自动化帐户运行手册,该帐户负责“复制”生产数据库到测试。我知道有一个New-AzSqlDatabaseCopy命令,但是该命令不起作用。它适用于Hyperscale数据库。 在Hyperscale中,此命令是否可以替代?或在第二个帐户中可以创建一个。 Bacpac使用Powershell的Azure命令远程进行Bacpac操作,我所看到的都是在同一帐户上工作的,但是由于工作率的原因,数据库帐户与自动化帐户不同。 预先感谢您的帮助和评论。

我已经尝试使用New-AzureRmSqlDatabaseExport命令,但它似乎只能在同一Azure帐户中使用,并且我无法指定“用于备份的Azure帐户”和“用于存储的Azure帐户”。我说的对吗?

2 个答案:

答案 0 :(得分:0)

Database copy当前不适用于Azure SQL Hyperscale,但是您可能会在几个月后的公共预览中看到它。

答案 1 :(得分:0)

类似于Alberto Morillo在其评论New-AzSqlDatabaseCopy中说,Azure SQL HyperScale当前不可用。至少在这个答案的时候。

因此,我尝试将New-AzureRmSqlDatabaseExport与2个Azure帐户一起使用,并且完全可能,您需要使用原始数据库Connect-AzureRmAccount的Azure帐户登录,然后需要调用New-AzureRmSqlDatabaseExport带有以下参数的命令。

New-AzureRmSqlDatabaseExport 
    -ResourceGroupName          $RGName # Resource group of the source database
    -ServerName                 $Server # Server name of the source database
    -DatabaseName               $Database # Name of the source database 
    -AdministratorLogin         $User # Administrator user of the source database
    -AdministratorLoginPassword $Pwd # Password of the source database
    -StorageKeytype             "StorageAccessKey" # Key type of the destination storage account (The one of the another azure account)
    -StorageKey                 $StorageKey # Key of the destination storage account(The one of the another azure account)
    -StorageUri                 $StorageFileFullURI # The full file uri of the destination storage (The one of the another azure account)
# The format of the URI file is the following:
# https://contosostorageaccount.blob.core.windows.net/backupscontainer/backupdatabasefile.bacpac

不幸的是,此命令未启用超大规模,因此出现以下错误消息:

  

New-AzureRmSqlDatabaseExport:40822:此功能不适用于所选数据库的版本(超标)。

我对不是Hyperscale的数据库使用了相同的命令,并且运行良好。

最后,我认为我必须至少执行几个月的手动过程,Microsoft才能启动HyperScale的更新程序