1. 查看所有数据库
sql">\l
或
sql">SELECT datname FROM pg_database;
2. 查看当前数据库中的所有表
sql">\dt
或
sql">SELECT table_name FROM information_schema.tables WHERE table_schema = 'public';
3. 查看所有表空间
sql">\db
或
sql">SELECT spcname FROM pg_tablespace;
4. 查看所有用户(角色)
sql">\du
或
sql">SELECT usename FROM pg_user;
5. 查看当前数据库的连接信息
sql">SELECT * FROM pg_stat_activity;
6. 查看表的详细信息(包括列、类型等)
sql">\d table_name
或
sql">SELECT column_name, data_type, is_nullable FROM information_schema.columns WHERE table_name = 'table_name';
7. 查看表的索引
sql">\di
或
sql">SELECT indexname, indexdef FROM pg_indexes WHERE tablename = 'table_name';
8. 查看表的约束
sql">\d+ table_name
或
sql">SELECT constraint_name, constraint_type FROM information_schema.table_constraints WHERE table_name = 'table_name';
9. 查看当前数据库的大小
sql">SELECT pg_size_pretty(pg_database_size(current_database()));
10. 查看表的大小
sql">SELECT pg_size_pretty(pg_total_relation_size('table_name'));
11. 查看当前用户
sql">SELECT current_user;
12. 查看当前数据库
sql">SELECT current_database();
13. 查看所有模式(schema)
sql">\dn
或
sql">SELECT schema_name FROM information_schema.schemata;
14. 查看所有函数
sql">\df
或
sql">SELECT routine_name FROM information_schema.routines WHERE routine_type = 'FUNCTION';
15. 查看所有视图
sql">\dv
或
sql">SELECT table_name FROM information_schema.views;
16. 查看所有触发器
sql">\dy
或
sql">SELECT trigger_name FROM information_schema.triggers;
17. 查看所有序列
sql">\ds
或
sql">SELECT sequence_name FROM information_schema.sequences;
18. 查看所有扩展(extensions)
sql">\dx
或
sql">SELECT extname FROM pg_extension;
19. 查看当前数据库的配置参数
sql">SHOW ALL;
20. 查看某个配置参数的值
sql">SHOW parameter_name;
21. 查看当前数据库的锁信息
sql">SELECT * FROM pg_locks;
22. 查看当前数据库的统计信息
sql">SELECT * FROM pg_stat_all_tables;
23. 查看当前数据库的复制状态
sql">SELECT * FROM pg_stat_replication;
24. 查看当前数据库的 WAL(Write-Ahead Logging)信息
sql">SELECT * FROM pg_stat_wal;
25. 查看当前数据库的备份信息
sql">SELECT * FROM pg_stat_backup;