当前位置: 首页 > news >正文

PPAS下安装 pg_stat_statements过程记录

磨砺技术珠矶,践行数据之道,追求卓越价值

回到上一级页面: PostgreSQL统计信息索引页     回到顶级页面:PostgreSQL索引页

PostgreSQL中,如何安装pg_stat_statements,网上有很多这方面的论述。这里说说如何在PPAS下安装它:

实验一:首先,看是否可以不安装,直接拿来用:

[root@rhjp001 ~]# su - enterprisedb
-bash-3.2$ pwd
/opt/PostgresPlus/9.2AS
-bash-3.2$ ./bin/psql -d edb
psql (9.2.1.3)
"help" でヘルプを表示します.

edb=# select count(*) from pg_stat_statements;
ERROR:  pg_stat_statements must be loaded via shared_preload_libraries
edb=# 

实验二:直接创建:

edb=# create extension pg_stat_statments;
ERROR:  拡張機能の制御ファイル "/opt/PostgresPlus/9.2AS/share/extension/pg_stat_statments.control" をオープンできませんでした: そのようなファイルやディレクトリはありません
edb=# 

实验三:改配置文件后,再创建:

-bash-3.2$ pwd
/opt/PostgresPlus/9.2AS/data
-bash-3.2$ vim postgresql.conf
-bash-3.2$ cat postgresql.conf | grep preload
shared_preload_libraries = '$libdir/dbms_pipe,$libdir/edb_gen,pg_stat_statements'
#local_preload_libraries = ''
-bash-3.2$ 

重新启动后,创建,其实已经不用创建了。

[root@rhjp001 ~]# su - enterprisedb
-bash-3.2$ pwd
/opt/PostgresPlus/9.2AS
-bash-3.2$ ./bin/psql -d edb
psql (9.2.1.3)
"help" でヘルプを表示します.

edb=# create extension pg_stat_statements;
ERROR:  拡張機能 "pg_stat_statements" はすでに存在します
edb=# 
[root@rhjp001 ~]# su - enterprisedb
-bash-3.2$ ./bin/psql -d edb
psql (9.2.1.3)
"help" でヘルプを表示します.

edb=# select count(*) from pg_stat_statements;
 count 
-------
    47
(1 行)

edb=# 

也就是说,其实在PPAS安装好之后,如果想要使用 pg_stat_statements ,只要配置postgresql.conf的 shared_preload_libraries 就可以了。

卸载ppas,重新安装,然后再重新开始吧:

配置postgresql.conf:

把 shared_preload_libraries = '$libdir/dbms_pipe,$libdir/edb_gen'

改成:

shared_preload_libraries = '$libdir/dbms_pipe,$libdir/edb_gen,pg_stat_statements'

重新启动数据库: service ppas-9.2 restart

-bash-3.2$ ./bin/psql -d edb
psql (9.2.1.3)
"help" でヘルプを表示します.

edb=# select count(*) from pg_stat_statements;
 count 
-------
    42
(1 行)

edb=# 

这个pg_stat_statements,主要可以用于区分运行最慢的sql文:

例如:

edb=# \d pg_stat_statements;
    ビュー "enterprisedb.pg_stat_statements"
         列          || 修飾語 
---------------------+------------------+--------
 userid              | oid              | 
 dbid                | oid              | 
 query               | text             | 
 calls               | bigint           | 
 total_time          | double precision | 
 rows                | bigint           | 
 shared_blks_hit     | bigint           | 
 shared_blks_read    | bigint           | 
 shared_blks_dirtied | bigint           | 
 shared_blks_written | bigint           | 
 local_blks_hit      | bigint           | 
 local_blks_read     | bigint           | 
 local_blks_dirtied  | bigint           | 
 local_blks_written  | bigint           | 
 temp_blks_read      | bigint           | 
 temp_blks_written   | bigint           | 
 blk_read_time       | double precision | 
 blk_write_time      | double precision | 

edb=# 

查找最慢的10条sql文(这里用的是累计时间)

edb=# select * from pg_stat_statements order by total_time desc limit 10;
-[ RECORD 1 ]-------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 10
dbid                | 14000
query               | drop extension pg_stat_statements;
calls               | 2
total_time          | 3099.557
rows                | 0
shared_blks_hit     | 673
shared_blks_read    | 27
shared_blks_dirtied | 9
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0
-[ RECORD 2 ]-------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 10
dbid                | 14000
query               | create database gaodb owner gao;
calls               | 1
total_time          | 2068.82
rows                | 0
shared_blks_hit     | 54
shared_blks_read    | 4
shared_blks_dirtied | 7
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0
-[ RECORD 3 ]-------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 10
dbid                | 14000
query               | CREATE TEMP TABLE pga_tmp_zombies(jagpid int4)
calls               | 3
total_time          | 1061.702
rows                | 0
shared_blks_hit     | 479
shared_blks_read    | 109
shared_blks_dirtied | 37
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0
-[ RECORD 4 ]-------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 10
dbid                | 14000
query               | SELECT count(*) As count, pg_backend_pid() AS pid FROM pg_class cl JOIN pg_na
mespace ns ON ns.oid=relnamespace WHERE relname=? AND nspname=?
calls               | 3
total_time          | 929.614
rows                | 3
shared_blks_hit     | 6
shared_blks_read    | 15
shared_blks_dirtied | 0
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0
-[ RECORD 5 ]-------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 10
dbid                | 14000
query               | SELECT COUNT(*)    FROM pg_proc  WHERE proname = ? AND pronamespace = (
SELECT oid    FROM pg_namespace  WHERE nspname = ?) AND prorettype = (SELECT oid   ROM pg_type  WHERE typnam e = ?) AND   proargtypes = ?                                     
calls               | 3
total_time          | 337.312
rows                | 3
shared_blks_hit     | 15
shared_blks_read    | 15
shared_blks_dirtied | 0
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0
-[ RECORD 6 ]-------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 10
dbid                | 14000
query               | SELECT pgagent.pgagent_schema_version()
calls               | 3
total_time          | 321.264
rows                | 3
shared_blks_hit     | 12
shared_blks_read    | 12
shared_blks_dirtied | 0
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0
-[ RECORD 7 ]-------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 10
dbid                | 14000
query               | DROP TABLE pga_tmp_zombies
calls               | 3
total_time          | 282.334
rows                | 0
shared_blks_hit     | 360
shared_blks_read    | 21
shared_blks_dirtied | 0
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0
-[ RECORD 8 ]-------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 10
dbid                | 14000
query               | create extension pg_stat_statements;
calls               | 1
total_time          | 155.641
rows                | 0
shared_blks_hit     | 585
shared_blks_read    | 22
shared_blks_dirtied | 25
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0
-[ RECORD 9 ]-------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 16684
dbid                | 16685
query               | create table gaotab(id integer);
calls               | 1
total_time          | 143.838
rows                | 0
shared_blks_hit     | 195
shared_blks_read    | 59
shared_blks_dirtied | 21
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0
-[ RECORD 10 ]------+------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------
userid              | 16684
dbid                | 16685
query               | select pg_available_extensions();
calls               | 2
total_time          | 92.16
rows                | 100
shared_blks_hit     | 5
shared_blks_read    | 1
shared_blks_dirtied | 0
shared_blks_written | 0
local_blks_hit      | 0
local_blks_read     | 0
local_blks_dirtied  | 0
local_blks_written  | 0
temp_blks_read      | 0
temp_blks_written   | 0
blk_read_time       | 0
blk_write_time      | 0

edb=#  

需要注意,只有管理员用户才可以看到这个视图。

 

回到上一级页面: PostgreSQL统计信息索引页     回到顶级页面:PostgreSQL索引页

磨砺技术珠矶,践行数据之道,追求卓越价值 

相关文章:

  • LANMP–Apache2.4.6编译安装
  • 前端性能优化----yahoo前端性能团队总结的35条黄金定律
  • 通过建立的会话查看***
  • go语言中的数组切片:特立独行的可变数组
  • 图片原理解说(综合版:JPEG,PNG,BMP,GIF)
  • Adventure Works 教程
  • 工具和软件收藏
  • 8_21_2013_Problem D: BUREK_纯模拟
  • 计算机网络方向技能需求
  • linux centos 磁盘分区 逻辑卷
  • .cn根服务器被攻击之后
  • MAC地址验证之本地验证
  • testing
  • [转载]ARP表和FDB表的区别
  • [每日一题] 11gOCP 1z0-052 :2013-08-31   数据库的存储结构.....................................................
  • input的行数自动增减
  • JavaScript 基础知识 - 入门篇(一)
  • java中的hashCode
  • js算法-归并排序(merge_sort)
  • mongo索引构建
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • node入门
  • 检测对象或数组
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 漫谈开发设计中的一些“原则”及“设计哲学”
  • 前端
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • ###项目技术发展史
  • (9)目标检测_SSD的原理
  • (aiohttp-asyncio-FFmpeg-Docker-SRS)实现异步摄像头转码服务器
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (PWM呼吸灯)合泰开发板HT66F2390-----点灯大师
  • (Python) SOAP Web Service (HTTP POST)
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (一)VirtualBox安装增强功能
  • (中等) HDU 4370 0 or 1,建模+Dijkstra。
  • **登录+JWT+异常处理+拦截器+ThreadLocal-开发思想与代码实现**
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .NET Micro Framework初体验
  • .net 调用php,php 调用.net com组件 --
  • .net2005怎么读string形的xml,不是xml文件。
  • .net开发引用程序集提示没有强名称的解决办法
  • [ element-ui:table ] 设置table中某些行数据禁止被选中,通过selectable 定义方法解决
  • [ JavaScript ] JSON方法
  • [ Linux ] git工具的基本使用(仓库的构建,提交)
  • [ MSF使用实例 ] 利用永恒之蓝(MS17-010)漏洞导致windows靶机蓝屏并获取靶机权限
  • [ vulhub漏洞复现篇 ] GhostScript 沙箱绕过(任意命令执行)漏洞CVE-2019-6116
  • [Android]创建TabBar
  • [C/C++]数据结构----顺序表的实现(增删查改)
  • [Golang]K-V存储引擎的学习 从零实现 (RoseDB mini版本)
  • [Java算法分析与设计]--线性结构与顺序表(List)的实现应用
  • [leetcode] 103. 二叉树的锯齿形层次遍历
  • [Linux内存管理-分页机制]—把一个虚拟地址转换为物理地址