其实也不完全算PostgreSQL的技巧,应该算是SHELL技巧。

首先要配置好postgresql.conf,让PG记录下慢查询,并且日志固定格式,如下:
log_destination = 'csvlog'
log_min_duration_statement = 100ms
pg_ctl reload -D $PGDATA
 
来看一个统计的例子:
vi digoal.sh
 
#!/bin/bash
if [ $# -ne 2 ]; then
echo "Use 2 parameter"
exit
fi
 
file=$1
slow=$2
cnt=0
for i in `grep duration $1|grep SELECT|awk '{print $6}'|awk -F "." '{print $1}'`
do
if [ $i -gt $slow ]; then
cnt=$(($cnt+1))
fi
done
echo "Count Slow Sql (>$slow ms) In The $file : $cnt"
 
chmod 500 digoal.sh
 
例如,查询7月14号的慢查询,大于500MS的有多少条:
./digoal.sh "/var/log/pg_log/postgresql-2011-07-14*.csv" 500
Count Slow Sql (>500 ms) In The /var/log/pg_log/postgresql-2011-07-14*.csv : 13324
一天13324条执行时间超过500MS的SQL。
 
转载自:
https://blog.csdn.net/wan_xie2009/article/details/7621027

最新文章

  1. 三种执行SQL语句的的JAVA代码
  2. webpack入门
  3. Python单链表实现
  4. iOS 9 升级过程汇中白苹果 iPhone或iPad 解决方案
  5. BZOJ4517——[Sdoi2016]排列计数
  6. NoClassDefFoundError: org/slf4j/LoggerFactory解决
  7. DICOM:Ubuntu14环境下安装dcm4chee+oviyam2.1
  8. MyBatis的两个配置文件
  9. AVL树的插入删除查找算法实现和分析-1
  10. Django2.0文档
  11. 自制Linux 终端 锁屏防窃助手
  12. android sqlite boolean 类型
  13. ORACLE_11G归档空间满,由于数据库装完后使用的是默认空间是闪回区
  14. 我的Linux系统九阴真经
  15. read命令
  16. iOS开发点滴 - 关闭键盘
  17. log4net日志文件的应用
  18. python 资产扫描01
  19. 后缀数组LCP + 二分 - UVa 11107 Life Forms
  20. 看完前任三,想起我的前任java女程序员,她曾教会我……

热门文章

  1. python基础 — 链接 Mysql 创建 数据库和创表
  2. Golang常用快捷键以及常见快捷键冲突
  3. java 简单操作HDFS
  4. js获取网页和屏幕高度
  5. ASCII,UTF-8,Unicode字符串相互转换
  6. hdu 1075 map的使用 字符串截取的常用手段 以及string getline 使用起来的注意事项
  7. VMWare安装Ubuntu16.04
  8. 在论坛中出现的比较难的sql问题:38(字符拆分 字符串检索问题)
  9. Java之协程(quasar)
  10. 用 Scoop 管理你的 Windows 软件