从P3 Premium到S2 Standard的SQL Azure数据库扩展操作失败

时间:2016-02-23 09:31:02

标签: azure azure-sql-database

我正在尝试将SQL Azure数据库从P3缩小到S2,但我收到的错误如下。

Database scale operation from P3 Premium to S2 Standard failed for xxDB.
    ErrorCode: undefined 
    ErrorMessage: The edition 'Standard' does not support the database max size '500 GB'.

扩展的最佳方式是什么?

2 个答案:

答案 0 :(得分:2)

似乎你必须首先更改数据库大小..然后你的降级tiers.below是改变的整个语法,我没有天蓝色的数据库可以玩..

ALTER DATABASE database_name 
{
    MODIFY NAME =new_database_name
  | MODIFY ( <edition_options> [, ... n] ) 
  | COLLATE collation_name
  | SET { <db_update_options> } 
  | ADD SECONDARY ON SERVER <partner_server_name>
      [WITH (<add-secondary-option>::= [, ... n] ) ]
  | REMOVE SECONDARY ON SERVER <partner_server_name>
  | FAILOVER
  | FORCE_FAILOVER_ALLOW_DATA_LOSS
}

<edition_options> ::= 
{
      MAXSIZE = { 100 MB | 500 MB |1 | 5 | 10 | 20 | 30 … 150 … 500 } GB  
    | EDITION = { 'web' | 'business' | 'basic' | 'standard' | 'premium' } 
    | SERVICE_OBJECTIVE = 
                 {  'S0' | 'S1' | 'S2' | 'S3'| 'P1' | 'P2' | 'P3' | 'P4'| 'P6' | 'P11' 
                         { ELASTIC_POOL (name = <elastic_pool_name>) } 
                 } 
}

然后尝试降级

Refereences: https://azure.microsoft.com/en-us/documentation/articles/sql-database-scale-up/

在上面的链接中查找以下部分:

注意: 更改数据库定价层不会更改最大数据库大小。要更改数据库最大大小,请使用Transact-SQL(T-SQL)或PowerShell。

答案 1 :(得分:1)

您应该能够缩小数据库并更改版本(例如从Premium更改为Standard),而无需先更改MaxSize属性。你能分享一下你是如何做到这一点的(例如T-SQL,Azure门户,PowerShell,REST API调用,C#客户端SDK)。是否有可能在您的代码中使用现有数据库MaxSize属性并在数据库更新请求中提交 - 因为这会导致您看到的错误(标准不支持500GB)。当您从Standard扩展到Premium并希望通过Premium获得更大存储分配的好处时,表示您需要单独扩展和更改MaxSize的答案当前是正确的,但这显然不是您正在做的事情。

我们希望这里的行为更加智能,但与此同时,您可能会遇到错误。