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的更多相关文章

  1. postgresql学习之安装篇

    ---恢复内容开始--- 安装方法: 1.可以使用操作系统自带的安装源 2.可以使用官网下载的源码进行安装 3.可以使用编译好的包入.run格式的安装包安装(本文使用的是这种安装方法,下载地址http ...

  2. PostgreSQL Monitor pg_view

    PostgreSQL Monitor pg_view https://github.com/zalando/pg_view Requirements Linux 2.6, python 2.6, ps ...

  3. PostgreSQL Monitor pg_activity

    PostgreSQL Monitor pg_activity Command line tool for PostgreSQL server activity monitoring. https:// ...

  4. Streaming replication slots in PostgreSQL 9.4

    Streaming replication slots are a pending feature in PostgreSQL 9.4, as part of the logical changese ...

  5. PostgreSQL数据库系统的进程结构

    PostgreSQL数据库系统的主要功能都集中于Postgres程序,其入口是Main模块中的main函数,在初始化数据集簇,启动数据库服务器是,都将从这里开始执行.Main模块主要的工作时确定当前的 ...

  6. Measuring PostgreSQL Checkpoint Statistics

    Checkpoints can be a major drag on write-heavy PostgreSQL installations. The first step toward ident ...

  7. Understanding postgresql.conf : log*

    After loooong pause, adding next (well, second) post to the “series“. This time, I'd like to describ ...

  8. 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 ...

  9. Cloud Insight 仪表盘上线 | 全面监控 Redis

    OneAPM 作为应用性能领域的新兴领军企业,近期发布了重量级新产品-- Cloud Insight 数据管理平台,用它能够监控所有基础组件,并通过 tag 标签对数据进行管理. 近日,Cloud I ...

随机推荐

  1. 浏览器指纹 - HTTP cookie

    http://www.iefans.net/ruhe-fangfan-xielu-shangwang-yinsi/ http://www.iefans.net/cookie-yinsi-guanxi/ ...

  2. sql server 数据库连接配置在外面 如何读取

    注意:web运行读取要把配置文件放在WEB-INF下面 Driver=com.microsoft.sqlserver.jdbc.SQLServerDriverurl=jdbc:sqlserver:// ...

  3. OmniThreadLibrary 3.03b发布了

    虽然版本号升的不大,但这也是一个重要的版本.作者发现了一个长期存在的bug,就是建立一个线程,如果不指定线程的优先级则默认设置为idle.(正确的应是Normal) 看一下具体的改动情况: 新功能: ...

  4. Intel Visual Fortran Compiler 11调用lapack库实现并行多处理计算

    采用fortran进行数值计算的朋友们都应该听说过大名鼎鼎的lapack库,我就不多做介绍了,在此,我只是介绍一个编译好的lapack二进制包ACML(AMD Core Math Library),并 ...

  5. Delphi HOOK示例

    本应用程序的Hook: unit UFrmMain; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, ...

  6. 闭包 Clousure

    闭包 Clousure 参考:http://caibaojian.com/javascript-closures.html?fid=776%230-tsina-1-25974-397232819ff9 ...

  7. [LeetCode]题解(python):033-Search in Rotated Sorted Array

    题目来源 https://leetcode.com/problems/search-in-rotated-sorted-array/ Suppose a sorted array is rotated ...

  8. sql server 2008语句中的go有什么用?

    GO表示一个批处理的结束, SQLSERVER遇到Go以后就会将GO之前的语句作为一整批进行处理你在SSMS里执行的时候, 通常加不加都可以,但是如果实在SQLCMD下执行, GO就是一个执行命令了另 ...

  9. JS-009-屏幕分辨率、浏览器显示区域、元素位置获取

    此文简略讲述有关屏幕大小.元素位置及大小获取. 执行文中脚本时,请先打开 Chrome 浏览器,并切换至开发者工具的控制台,并打开网址:http://www.yixun.com/,文中元素事例为页面元 ...

  10. php中的编码问题

    转自:http://www.jb51.net/article/22501.htm php的header来定义一个php页面为utf编码或GBK编码 php页面为utf编码 header("C ...