PostgreSQL 查询

PostgreSQL 查询是用于从关系数据库管理系统中的表中检索数据的命令。 PostgreSQL 使用标准SQL查询语言。

如何追踪查询历史记录?

我需要对查询进行长期历史追踪,这有助于我诊断可能存在的慢查询问题。

您的 Databases for PostgreSQL 部署正遭遇查询速度缓慢的问题。 如何追踪查询历史记录以找出根本原因?

您正在经历查询速度缓慢的情况。

  • IBM® Cloud Logs 是一款日志管理服务,可与 Cloud Databases 集成,用于收集、分析和存储日志。 使用 IBM Cloud Logs 时间线功能,查看某个搜索词在日志中随时间推移的出现频率。 时间线通常将日志事件显示为沿时间轴分布的标记。 线条或标记的长度或高度可代表事件频率或其他参数,具体取决于时间轴可视化方式。 长查询本身并不是问题。 它们可以是一系列的,确定实际持续时间也有助于理解。
  • 启用 pg_stat_statements 此功能可识别瓶颈和优化领域。pg_stat_statements 该功能是 PostgreSQL 的扩展组件,用于追踪服务器执行的所有SQL语句的规划与执行统计数据。
  • 配置 log_min_duration_statement 参数可让用户记录耗时超过指定时长的语句。
  • 有关更多信息,请参阅 更改您的 Databases for PostgreSQL 配置。

如何防止慢查询日志泄露敏感数据?

记录缓慢的 PostgreSQL 查询可能会导致敏感数据泄露到日志中。

您的 Databases for PostgreSQL 部署正在记录慢查询,您担心这会导致敏感数据泄露。

PostgreSQL 查询可能包含敏感数据,例如个人信息、密码或机密商业数据。 如果这些敏感信息包含在查询中,它们可能会出现在日志文件中。

若您担心 PosgreSQL 日志中暴露敏感信息,请执行以下操作:

  • 使用 Cloud Databases API 将默认阈值“100毫秒”调整为更大的数值。 这样做将禁止该条目被写入日志。
  • 请调整您的查询,使用哈希密码代替明文密码。 更新使用哈希密码的查询需要对应用程序进行修改。