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. java语言中数值自动转换的优先顺序

    转换原则:从低精度向高精度转换byte .short.int.long.float.double.char数据类型的转换,分为自动转换和强制转换.自动转换是程序在执行过程中“悄然”进行的转换,不需要用 ...

  2. 搭建C语言开发环境

    大学的时候有数据结构这门课,但...终究还是得学.电脑是win8的,根据网上的教程倒是能安装成功vc6.0并且能够打开新建工程,但是一编译运行就提示兼容性问题. 首先安装C语言编译器.下载MinGw ...

  3. Java ArrayListSerialise

    import java.io.*; import java.util.*; //ArrayListSerialise public class A { public static void main( ...

  4. excel15个技巧

    自动定时保存Excel中的文件 点击“工具”菜单“自动保存”项,设置自动保存文件夹的间隔时间.如果在“工具”菜单下没有“自动保存”菜单项,那么执行“工具”菜单下“加载宏…”选上“自动保存”,“确定”. ...

  5. WIN API 擦除所绘图像

    COLORREF circle_color = RGB(0, 105, 255); //获取窗口DC HDC hdc = GetDC(hWnd_); //背景色透明 SetBkMode(hdc, TR ...

  6. 巧用AWK处理二进制数据文件

    AWK是Unix下的一款功能强大的文本格式化和抽取工具.利用这个工具,可以对复杂的文本文件进行整理,提取其中的全部或者部分数据,按照需要的格式予以显示.需要说明的是,AWK的强大功能只针对纯文本文件. ...

  7. Linq&Lumbda (2)

    "Lambda表达式"是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式树类型. Lambda 运算符: => 该运算符读为"goes to&quo ...

  8. 最大子序列和 o(n)

    问题: 给定一整数序列A1, A2,... An (可能有负数),求A1~An的一个子序列Ai~Aj,使得Ai到Aj的和最大 例如:整数序列-2, 11, -4, 13, -5, 2, -5, -3, ...

  9. 101个LINQ示例,包含几乎全部操作

    Restriction Operators Where - Simple public void Linq1() { , , , , , , , , , }; var lowNums = from n ...

  10. python echo服务器和客户端(客户端可以用telnet之类的)

    发上来记录一下,省得下次再写一遍 服务器:server.py #-*- coding:utf-8 -*- from SocketServer import TCPServer, BaseRequest ...