c# - Azure 资源管理器 - backupLongTermRetentionPolicies - 错误 "WeekOfYear is required to be set between 1 and 52 in order to set yearly retention."

标签 c# azure azure-resource-manager azure-rm-template

我们正在使用 Azure 资源管理器模板(ARM 模板)部署脚本,并且希望在生产或测试中设置不同的保留策略。

使用我们当前的 Dev SQL 服务器的导出模板给出以下值:

enter image description here

如果这些值按原样复制到我们的部署脚本中:

{
    "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

https://learn.microsoft.com/en-us/rest/api/sql/managedinstancelongtermretentionpolicies/createorupdate

最佳答案

通过删除 monthlyRetentionyearlyRetentionweekOfYear 参数解决。

参数:

"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/

相关文章:

azure - 如何通过 API 使用 "between"运算符清除 Log Analytics 工作区中的数据?

azure - Azure AD Web 应用程序的“授予权限”按钮是什么

azure - 为使用 OnPrem 数据网关的 API 连接部署 ARM 模板成功,但缺少 authType 和网关参数

azure - 如何删除被不属于我的域锁定的 Front Door 资源

c# - 通过 C# 确定文件路径是否有效且存在

c# - 如何遍历临时表的循环以取出SQL中的每个列名?

c# - SaveFileDialog 保存按钮事件

c# - Mvc 创建按钮弹出需要帮助 C#.net

azure - 使用 Azure AD 与服务器进行 React-Native 身份验证

Azure 资源管理器 - 将值转换为 'lower'