这是一个社区维基,用于收集各种 PostgreSQL 知识。没有什么是太常见或太晦涩的。发布任何你知道的、可以帮助其他人充分利用这个数据库的内容。
答案1
答案2
我学到的关于 postgres 的第一件事就是一些存储有关 postgres 实例的信息的 postgres 表,例如:
su - postgres
psql
SELECT * FROM pg_stat_activity;
显示有关 postgres 实例上当前活动的大量信息,即哪些客户端连接到它、它们当前正在运行什么查询以及运行了多长时间等
答案3
- 永远不要使用规则。
- 永远不要在视图内部调用视图。
- 了解视图上的选择性与视图内部的选择性并不相同。
- 如果观点只是一层薄薄的外表,那么它大多是个坏主意。
- PostgreSQLCOPY 很脆弱,比以前少了,但如果您要处理大量 CSV,请习惯使用脚本语言。
- 永远不要使用 VARCHAR。它的插入速度较慢,存储量也比 TEXT 大。不要用它来防止大量插入。仅当您想获得 CHAR() 的效果而不需要空格填充时才使用它。
- 要小心使用 CTE,它们具有不同的性能概况。
- PLPERL 和 PLPERLU 是最好的切片面包。
答案4
PostgreSQL 响应的信号(适用于较新版本)。感谢 Evan Anderson!