You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Powershell重命名还原后Database for PostgreSQL Server的方案咨询

Azure PostgreSQL 还原后修改服务器名称相关问题解答

核心结论

Azure Database for PostgreSQL 服务器的名称是全局唯一的资源标识,创建完成后无法修改,无论是Azure Portal、Azure CLI还是Azure PowerShell都不支持重命名操作。

已验证的可行实现方案(满足灾备测试、不丢失原有资源、保留原访问名称的需求)

方案1:自定义CNAME别名(推荐,零侵入、原服务器完全保留)

该方案不需要变动原有服务器资源,客户端也不需要修改连接字符串即可完成切换:

  • 提前在DNS解析服务中添加CNAME记录,例如将pg-access.yourdomain.com指向原有服务器地址original-server.postgres.database.azure.com,所有客户端统一使用该CNAME作为数据库连接地址。
  • 灾备测试时先暂停原服务器写入,执行时点还原得到新的临时服务器restored-server.postgres.database.azure.com,验证该服务器的所有数据、权限配置、防火墙规则、参数设置均符合预期。
  • 修改CNAME记录的解析目标为restored-server.postgres.database.azure.com,调小TTL值可实现分钟级切换,客户端无感知,访问地址完全不变。
  • 测试完成后可将CNAME切回原服务器,临时还原出的服务器可按需保留或删除,原有服务器资源全程不受影响。

方案2:名称释放后重建(适合需要保留原生Azure服务器域名的场景)

如果必须使用原生的original-server.postgres.database.azure.com地址访问还原后的实例,可按以下步骤操作:

  • 先确认原服务器的本地冗余备份完整可用,也可手动导出全量备份到Azure存储账户做二次留存。
  • 执行时点还原得到临时服务器restored-server,验证数据和配置无异常。
  • 开启了软删除的情况下,先删除原服务器,再手动清除软删除记录释放名称:
    # 删除原服务器
    Remove-AzPostgreSqlServer -ResourceGroupName <你的资源组名> -Name original-server
    # 清除软删除记录,立即释放名称
    Remove-AzPostgreSqlServer -ResourceGroupName <你的资源组名> -Name original-server -DeletePermanently
    
  • 对临时服务器restored-server执行即时备份,用该备份还原为名称为original-server的新服务器:
    Restore-AzPostgreSqlServer -Name original-server -ResourceGroupName <你的资源组名> -InputObject (Get-AzPostgreSqlServer -Name restored-server -ResourceGroupName <你的资源组名>) -RestorePointInTime (Get-Date) -UseGeoRestore $false
    
  • 验证新的original-server可用后,可删除临时服务器restored-server,原服务器的备份、配置可留存,不会丢失资源。

注意:方案2中服务器名称释放后需等待1~2分钟的DNS同步时间,再执行还原操作避免名称占用报错。


内容的提问来源于stack exchange,提问作者Henry T

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 08:45:07