再转载一篇jeffery的文章:http://www.cnblogs.com/odoouse/p/5995432.html
pg_stat_statements是postgresql的一个扩展,用来统计查询语句,类似于MysqL的慢查询。
安装二进制文件
有些发行版可能没有附带这个扩展,则需要用户自己安装,本文演示的发行版均自带,所以安装就略过。
装载库
默认情况下,这个扩展是没有启用的,为了要启用它,需要修改postgres.conf配置文件,增加
pg_stat_statements是该扩展的名称,一般是存放在$lib目录下,此目录可以使用命令pg_config查看
对于linux,它通常位于/usr/lib/postgresql/9.5/lib/
对于windows,它通常位于C:\Program Files\Postgresql\9.4\lib
创建扩展
在配置文件启用它之后,重启postgresql服务,登录到psql创建extension,只有创建扩展之后,它才能被使用。
创建命令是create extension pg_stat_statements
使用pg_stat_statements
安装这个扩展之后,它会创建一个视图pg_stat_statements
配置和操作
pg_stat_statements具有以下几个配置参数
参数名称 |
说明 |
pg_stat_statements.max (integer) |
跟踪语句的最大数量,也就是该视图的最大行数,默认是5000 |
pg_stat_statements.track (enum) |
哪些语句将被跟踪, 可选 top 和 all,top用于追踪top-level statement(直接由客户端方发送的),all还会追踪嵌套的statements(例如在函数中调用的statements),默认是top |
pg_stat_statements.track_utility (boolean) |
utility 命令[SELECT,INSERT,UPDATE and DELETE 之外的那些命令]是否被跟踪,默认是on |
pg_stat_statements.save (boolean) |
服务关机时,是否还保存语句统计,默认是on |
|
|
pg_stat_statements 具有以下几个 函数