我们正在使用 Azure 资源管理器模板(ARM 模板)部署脚本,并且希望在生产或测试中设置不同的保留策略。
使用我们当前的 Dev SQL 服务器的导出模板给出以下值:
如果这些值按原样复制到我们的部署脚本中:
{
"type": "Microsoft.Sql/servers/databases/backupLongTermRetentionPolicies",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_prod_repository_name'), '/', parameters('servers_prod_repository_name'), '/default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers/databases', parameters('servers_prod_repository_name'), parameters('servers_prod_repository_name'))]",
"[resourceId('Microsoft.Sql/servers', parameters('servers_prod_repository_name'))]"
],
"properties": {
"weeklyRetention": "PT0S",
"monthlyRetention": "PT0S",
"yearlyRetention": "PT0S",
"weekOfYear": 0
}
},
我收到以下错误:
Resource Microsoft.Sql/servers/databases/backupLongTermRetentionPolicies 'our-sql-server/our-sql-server/default' failed with message '{ 11:14:50 - "error": { 11:14:50 - "code": "LongTermRetentionMissingWeekOfYear", 11:14:50 - "message": "WeekOfYear is required to be set between 1 and 52 in order to set yearly retention." 11:14:50 - } 11:14:50 - }'
错误“WeekOfYear 需要设置在 1 到 52 之间才能设置年度保留。”
位于预期响应中,但考虑到该值是标准值,这似乎是一个错误将 yearlyRetention
设置为 PT0S
。
最佳答案
通过删除 monthlyRetention
、yearlyRetention
和 weekOfYear
参数解决。
参数:
"weeklyRetention": {
"value": "P4W"
},
部署脚本:
{
"type": "Microsoft.Sql/servers/databases/backupLongTermRetentionPolicies",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_prod_repository_name'), '/', parameters('servers_prod_repository_name'), '/default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers/databases', parameters('servers_prod_repository_name'), parameters('servers_prod_repository_name'))]",
"[resourceId('Microsoft.Sql/servers', parameters('servers_prod_repository_name'))]"
],
"properties": {
"weeklyRetention": "[parameters('weeklyRetention')]"
}
},
关于c# - Azure 资源管理器 - backupLongTermRetentionPolicies - 错误 "WeekOfYear is required to be set between 1 and 52 in order to set yearly retention.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66671336/