长时间运行的操作失败,状态为“失败”。附加信息:“指定的sku'ElasticPool'无效。'

时间:2019-10-11 13:05:36

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

我正在尝试使用PSCmdlet New-AzSqlDatabaseCopy克隆Azure SQL数据库(在被告知Restore-AzSqlDatabase不允许我进行跨服务器复制之后)。我的命令如下:

New-AzSqlDatabaseCopy   -ServerName $SourceDatabase.ServerName `
                        -ResourceGroupName $SourceDatabase.ResourceGroupName `
                        -DatabaseName $SourceDatabase.DatabaseName `
                        -ServiceObjectiveName $SourceDatabase.CurrentServiceObjectiveName `
                        -CopyServerName $TargetServerName `
                        -CopyResourceGroupName $TargetResourceGroupName `
                        -CopyDatabaseName $TargetDBName `
                        -ElasticPoolName $ElasticPoolName`
                        -ErrorAction stop

源数据库与目标数据库位于不同的服务器和资源组中,并且与目标数据库位于不同的弹性池中。

我检查并仔细检查了所有参数,以确保它们正确无误,然后我使用-whatif来运行它,并且一切看起来都不错(除了创建日期是1/1/0001,但我并不超级)对此感到担忧)

但是,当我运行该命令时,我得到New-AzSqlDatabaseCopy : Long running operation failed with status 'Failed'. Additional Info:'The sku 'ElasticPool' specified is invalid.'任何输入将不胜感激

2 个答案:

答案 0 :(得分:0)

确保新的弹性池与旧的弹性池具有相同的名称和名称。同时确保两个弹性池的SKU相同。如果资源组位于不同的区域,则弹性池的sku可能会有所不同,从而导致在复制数据库时出现问题。

SQL服务器-sql_server_A -弹性池-elastic_pool_1 -----数据库-template_db

SQL服务器-sql_server_B ---弹性池-elastic_pool_1(名称等于sql_server_A中的弹性池)

参考文献:

https://github.com/Azure/azure-libraries-for-net/issues/41

https://docs.microsoft.com/en-us/azure/sql-database/scripts/sql-database-move-database-between-pools-powershell

https://docs.microsoft.com/en-us/rest/api/sql/databases/createorupdate

https://docs.microsoft.com/en-us/rest/api/sql/elasticpools/createorupdate

答案 1 :(得分:0)

删除“ -ServiceObjectiveName”参数。只能使用-elasticpool或-ServiceObjectiveName。