预先检查
- 验证应用服务器无法连接主数据库
- 检查监控告警确认数据库健康状态
步骤 1:确认主库故障
# 检查当前主库状态
psql -h <primary-host> -c "SELECT pg_is_in_recovery();"
步骤 2:提升从库
# 在从库服务器执行
pg_ctl promote -D /var/lib/postgresql/data
步骤 3:更新连接字符串
# 更新应用配置
DATABASE_URL=postgresql://appuser:password@<new-primary>:5432/mydb
验证
- 从应用服务器测试连接
- 监控剩余从库的复制延迟
- 确认只读从库已指向新主库