PostgreSQL Insight Monitor pgstat
PostgreSQL Insight Monitor pgstat
pgstat 是一个连接到数据库并获取数据库的活动状态的命令行工具。
PostgreSQL有许多状态:
archiver for pg_stat_archiver
bgwriter for pg_stat_bgwriter
connection for connections by type
database for pg_stat_database
table for pg_stat_all_tables
tableio for pg_statio_all_tables
index for pg_stat_all_indexes
function for pg_stat_user_function
tatement for pg_stat_statements
pbpools for pgBouncer pools statistics
pbstats for pgBouncer general statistics
安装pgstat
[root@node1 soft_bak]# git clone https://github.com/gleu/pgstats
[root@node1 soft_bak]# cd pgstats/
[root@node1 pgstats]# ls
License Makefile pgcsvstat.c pgstat.c
[root@node1 pgstats]# make PG_CONFIG=/usr/local/pg945/bin/pg_config
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -O2 -I/usr/local/pg945/include -I. -I./ -I/usr/local/pg945/include/postgresql/server -I/usr/local/pg945/include/postgresql/internal -D_GNU_SOURCE -c -o pgcsvstat.o pgcsvstat.c
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -O2 pgcsvstat.o -L/usr/local/pg945/lib -lpgcommon -lpgport -L/usr/local/pg945/lib -lpq -L/usr/local/pg945/lib -Wl,--as-needed -Wl,-rpath,'/usr/local/pg945/lib',--enable-new-dtags -o pgcsvstat
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -O2 -I/usr/local/pg945/include -I. -I./ -I/usr/local/pg945/include/postgresql/server -I/usr/local/pg945/include/postgresql/internal -D_GNU_SOURCE -c -o pgstat.o pgstat.c
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -O2 pgstat.o -L/usr/local/pg945/lib -lpgcommon -lpgport -L/usr/local/pg945/lib -lpq -L/usr/local/pg945/lib -Wl,--as-needed -Wl,-rpath,'/usr/local/pg945/lib',--enable-new-dtags -o pgstat
查看pgstat 帮助
[postgres@node3 pgstats]$ ./pgstat --help
pgstat gathers statistics from a PostgreSQL database.
Usage:
pgstat [OPTIONS] [delay [count]]
General options:
-f FILTER include only this object
-H display human-readable values
-n do not redisplay header
-s STAT stats to collect
-v verbose
-?|--help show this help, then exit
-V|--version output version information, then exit
Connection options:
-h HOSTNAME database server host or socket directory
-p PORT database server port number
-U USER connect as specified database user
-d DBNAME database to connect to
The default stat is pg_stat_bgwriter, but you can change it with the -s command line option,
and one of its value (STAT):
* archiver for pg_stat_archiver
* bgwriter for pg_stat_bgwriter
* connection (only for > 9.1)
* database for pg_stat_database
* table for pg_stat_all_tables
* tableio for pg_statio_all_tables
* index for pg_stat_all_indexes
* function for pg_stat_user_function
* statement for pg_stat_statements (needs the extension)
* xlog for xlog writes (only for > 9.2)
* tempfile for temporary file usage
* pbpools for pgBouncer pools statistics
* pbstats for pgBouncer statistics
查看数据库连接相关信息

可以看到这个数据库有好多连接,需要连接池
查看一个数据库pgbench测试信息

查看表级别的信息

查看指定的表状态信息(通过-f来过滤)

对pg_stat_statements的支持
[postgres@node3 pgstats]$ ./pgstat -s statement -d postgres
pgstat: Cannot find the pg_stat_statements extension.
修改
shared_preload_libraries = 'pg_stat_statements'
# Add settings for extensions here
pg_stat_statements.max = 10000
pg_stat_statements.track = all
[postgres@node3 data]$ cd ../bin/
[postgres@node3 bin]$ ./psql
psql (9.4.5)
Type "help" for help.
postgres=# create extension pg_stat_statements ;
CREATE EXTENSION
[postgres@node3 bin]$ ./pg_ctl -D ../data/ stop -m fast
waiting for server to shut down..... done
server stopped
[postgres@node3 bin]$ ./pg_ctl -D ../data/ start
server starting
[postgres@node3 bin]$ LOG: database system was shut down at 2016-01-15 14:51:09 CST
LOG: MultiXact member wraparound protections are now enabled
LOG: database system is ready to accept connections
LOG: autovacuum launcher started
[postgres@node3 bin]$ ./psql
psql (9.4.5)
Type "help" for help.
postgres=# select pg_stat_statements_reset();
pg_stat_statements_reset
--------------------------
(1 row)

在数据库运行当中,WAL发生了 多少写操作

以可读的方式显示

查看临时文件和临时文件的大小

也可以通过pg_stat_database查看

更多的使用可以查看pgstat.c文件。
PostgreSQL Insight Monitor pgstat的更多相关文章
- postgresql学习之安装篇
---恢复内容开始--- 安装方法: 1.可以使用操作系统自带的安装源 2.可以使用官网下载的源码进行安装 3.可以使用编译好的包入.run格式的安装包安装(本文使用的是这种安装方法,下载地址http ...
- PostgreSQL Monitor pg_view
PostgreSQL Monitor pg_view https://github.com/zalando/pg_view Requirements Linux 2.6, python 2.6, ps ...
- PostgreSQL Monitor pg_activity
PostgreSQL Monitor pg_activity Command line tool for PostgreSQL server activity monitoring. https:// ...
- Streaming replication slots in PostgreSQL 9.4
Streaming replication slots are a pending feature in PostgreSQL 9.4, as part of the logical changese ...
- PostgreSQL数据库系统的进程结构
PostgreSQL数据库系统的主要功能都集中于Postgres程序,其入口是Main模块中的main函数,在初始化数据集簇,启动数据库服务器是,都将从这里开始执行.Main模块主要的工作时确定当前的 ...
- Measuring PostgreSQL Checkpoint Statistics
Checkpoints can be a major drag on write-heavy PostgreSQL installations. The first step toward ident ...
- Understanding postgresql.conf : log*
After loooong pause, adding next (well, second) post to the “series“. This time, I'd like to describ ...
- Use Spring Insight Developer to Analyze Code, Install it with Tomcat, and Extend it with Plugins--转载
原文地址:http://www.tomcatexpert.com/blog/2012/12/05/use-spring-insight-developer-analyze-code-install-i ...
- Cloud Insight 仪表盘上线 | 全面监控 Redis
OneAPM 作为应用性能领域的新兴领军企业,近期发布了重量级新产品-- Cloud Insight 数据管理平台,用它能够监控所有基础组件,并通过 tag 标签对数据进行管理. 近日,Cloud I ...
随机推荐
- Bootstrap页面布局12 - BS表单元素的排版
首先看看这行代码: <label for='account'>帐 号</label> <input id='account' name='account' type='t ...
- 利用Excel画柱状图,并且包含最大最小值
如何利用Excel画出如上样式的图? 1.绘制柱状图.如何绘制柱状图,操作非常简单,选中数据,点击合适的图表样式即可. 2.添加误差线.选中已绘制好的图,添加误差线.如果误差线没有出现,可以使用”更多 ...
- 02/07/2106 @ 6:28am (UTC)
<?php echo pow(2,32); 4294967296 http://www.unixtimestamp.com/index.php 4294967296 Is equivalent ...
- 在Delphi中如何控制其它应用程序窗口
在编写Delphi的应用程序中,常常涉及对其它Windows应用程序的操作.例如,在数据库的管理系统中,财务人员需要使用计算器,即可调用Windows内含的计算器功能,若每次使用,均通过“开始/程序/ ...
- Java程序员从笨鸟到菜鸟之(二十一)java过滤器和监听器详解 【转】
过滤器 1.Filter工作原理(执行流程) 当客户端发出Web资源的请求时,Web服务器根据应用程序配置文件设置的过滤规则进行检查,若客户请求满足过滤规则,则对客户请求/响应进行拦截,对请求头和请 ...
- python 输出乱码
在Python中有两种默认的字符串:str和unicode.在Python中一定要注意区分“Unicode字符串”和“unicode对象”的区别.后面所有的“unicode字符串”指的都是python ...
- 【Android测试】【第七节】Monkey——源码浅谈
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/4713466.html 前言 根据上一篇我们学会了Monke ...
- Delphi Memory-Mapped File简单示例
{ Copyright ?1999 by Delphi 5 Developer's Guide - Xavier Pacheco and Steve Teixeira } unit MainFrm; ...
- Cocos2d-JS轻量级开发
官方提供了另外一种使用cocos2d js的方式,更适合web开发者,只要引用一个js就可以了 1.下载Cocos2d-JS Lite Version(去下载>>) 下载下来的将是一个完整 ...
- -tableView: cellForRowAtIndexPath:方法不执行问题
今天在学习UItableView 的时候,定义了一个属性 @property (weak, nonatomic) NSMutableArray *dataList: 在ViewDidLoad方法方法中 ...