我有一个SQL Azure数据库,在营业时间需要Premium(P1)服务级别,但可以在夜间和周末期间降级为标准(S2),以节省成本。
我可以毫无问题地通过Azure管理门户执行这些操作,但希望通过计划的PowerShell脚本来执行这些操作。
基本上,我的脚本正在执行以下操作(摘录):
$db = Get-AzureSqlDatabase $serverContext –DatabaseName $dbName
$P1 = Get-AzureSqlDatabaseServiceObjective $serverContext -ServiceObjectiveName "P1"
Set-AzureSqlDatabase $serverContext –Database $db –ServiceObjective $P1 -Force
不幸的是,似乎禁止通过脚本执行此操作: - (
*Set-AzureSqlDatabase : The edition 'Standard' does not support the service objective '7203483a-c4fb-4304-9e9f-17c71c904f5d'.*
有没有人知道这是否是SQLAzure cmdlet的限制,或者我是否做错了什么(我没有任何麻烦通过门户网站提交相同的请求)。是否有更好的方法可以按计划自动执行这些升级/降级操作(REST API?)?
感谢您的帮助
奥利弗
答案 0 :(得分:3)
您对Set-AzureSqlDatabase
的来电缺少-Edition
参数。
Set-AzureSqlDatabase $serverContext –Database $db –ServiceObjective $P1 -Force -Edition Premium