💡
原文英文,约1700词,阅读约需7分钟。
📝
内容提要
Postgres内部表存储大量数据,开发者可通过psql命令访问,如使用命令 \\d 描述表和 \\di 列出索引。内部视图提供数据库活动、锁和查询统计信息,帮助优化性能和排查问题。了解这些目录表有助于更好地管理数据库。
🎯
关键要点
- Postgres内部表存储大量数据,开发者可通过psql命令访问。
- 使用命令\d描述表,\di列出索引,\dx列出已安装的扩展。
- 内部视图提供数据库活动、锁和查询统计信息,帮助优化性能和排查问题。
- pg_stat_activity视图显示当前数据库活动,包括运行的查询和客户端信息。
- pg_stat_statements视图跟踪所有查询的执行统计信息,帮助识别慢查询。
- pg_stat_database视图提供数据库的连接、事务和I/O统计信息。
- pg_locks视图显示活动进程持有的锁,帮助排查锁定问题。
- pg_stat_user_tables视图提供表的统计信息,包括顺序扫描和索引扫描。
- pg_stat_user_indexes视图显示用户索引的使用情况,帮助识别未使用的索引。
- pg_settings视图提供配置参数及其当前值的描述。
- pg_roles视图列出所有系统角色,包括用户和组的信息。
- pg_database视图包含集群中的所有数据库及其元数据。
- pg_stats表收集列的详细信息,帮助查询优化。
- pg_class表包含数据库中每个表、索引、序列和视图的行。
- pg_type表存储所有数据类型的信息,包括自定义数据类型。
- pg_proc表包含所有函数和存储过程的元数据。
- pg_attribute表存储每个表列的信息。
- pg_catalog是持有所有目录表的模式,查询时需包含pg_catalog。
- 可以通过-E参数连接到数据库以查看psql命令的底层SQL。
❓
延伸问答
如何使用psql命令查看Postgres中的表和索引?
可以使用命令 \d 描述表,\di 列出索引,\dx 列出已安装的扩展。
pg_stat_activity视图提供哪些信息?
pg_stat_activity视图显示当前数据库活动,包括运行的查询、状态和客户端信息。
如何识别Postgres中的慢查询?
可以使用pg_stat_statements视图跟踪所有查询的执行统计信息,识别慢查询。
pg_locks视图的用途是什么?
pg_locks视图显示活动进程持有的锁,帮助排查锁定问题和死锁。
Postgres中如何查看数据库的连接和事务统计信息?
可以使用pg_stat_database视图查看数据库的连接、事务和I/O统计信息。
pg_catalog模式在Postgres中有什么作用?
pg_catalog是持有所有目录表的模式,查询时需包含pg_catalog以访问系统表。
➡️