故障排查概览
本文汇总 CloudBase PostgreSQL 常见问题的排查路径。遇到问题时,先确认报错发生在连接、权限、SQL 执行、HTTP API、备份恢复还是性能层面。
快速定位
| 症状 | 优先查看 |
|---|---|
| 不确定问题类型,或遇到 HTTP 401/403/404/409/500 等常见错误 | 常见错误速查 |
| 无法连接数据库、连接超时、密码错误 | 连接失败 |
| 查询返回空数组、提示 permission denied | 权限与 RLS 问题 |
| HTTP API 新字段不可见、RPC 找不到函数 | Schema Cache 问题 |
| 备份失败、恢复后数据不符合预期 | 备份与恢复问题 |
| 查询慢、连接池排队、锁等待 | 查询优化 和 日志与监控 |
收集信息
提交问题或自查前,建议先收集以下信息:
- 环境 ID、地域、数据库实例和表名。
- 访问方式:SDK、HTTP API、DMC、云函数、云托管或直连。
- 完整错误信息和 SQLSTATE 错误码。
- 请求时间、请求 ID、用户身份和关键参数。
- 最近是否修改过表结构、RLS 策略、角色授权或连接配置。
常用检查 SQL
检查当前连接:
select current_database(), current_user, now();
检查表是否存在:
select table_schema, table_name
from information_schema.tables
where table_schema = 'public'
order by table_name;
检查 RLS 是否启用:
select schemaname, tablename, rowsecurity
from pg_tables
where schemaname = 'public';
处理原则
- 先在测试环境复现,再修改生产配置。
- 先保留现场信息,再执行回滚、重启或清理操作。
- 对权限和数据修复操作保留 SQL 记录。
- 对无法确认影响范围的问题,先暂停高风险写入。