• PostgreSQL Performance Monitoring Tools


    PostgreSQL Performance Monitoring Tools

    https://github.com/CloudServer/postgresql-perf-tools

    This package includes three useful scripts aimed to help to pinpoint performance issues on systems with PostgreSQL as database backend.

    All scritps are written in Python. Requirements:

    All scripts require a connect to PostgreSQL database. They take traditional set of DB credentials: host address, port (5432 by default), database name, database user and password.

    Note: you may need to modify pg_hba.conf file to allow the scripts to connect to the server. Please refer to official documentaion:http://www.postgresql.org/docs/9.3/static/auth-pg-hba-conf.html

    For detailed list of command line options use --help / -h option.

    软件包

    Python-2.7.tar.bz2   psycopg2-2.6.1.tar.gz   psutil-3.2.2.tar.gz

    安装 python2.7

    [root@node3 soft_bak]# tar jxvf Python-2.7.tar.bz2

    [root@node3 soft_bak]# cd Python-2.7

    [root@node3 Python-2.7]# ./configure --prefix=/usr/local/python2.7/

    [root@node3 Python-2.7]# make

    [root@node3 Python-2.7]# make install

    添加/usr/local/python2.7/bin/到Linux的环境变量中

    [root@node3 bin]# echo $PATH

    /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

    [root@node3 bin]# PATH="$PATH":/usr/local/python2.7/bin/

    [root@node3 bin]# echo $PATH

    /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/python2.7/bin/

    删除/usr/bin中的python文件,为python2.7创建连接

    [root@node3 bin]# cd /usr/bin/

    [root@node3 bin]# rm -rf python

    [root@node3 bin]# ln -s /usr/local/python2.7/bin/python ./python

    [root@node3 bin]# python

    Python 2.7 (r27:82500, Jan 14 2016, 16:13:36)

    [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2

    Type "help", "copyright", "credits" or "license" for more information.

    >>> 

    解决Python升级后yum不能用的问题

    #修改yum文件

    vi /usr/bin/yum

    将文件头部的

    #!/usr/bin/python

    改为如下内容

    #!/usr/bin/python2.6

    安装psutil

    [root@node3 soft_bak]# tar zxvf psutil-3.2.2.tar.gz

    [root@node3 PGMonitor]# cd psutil-3.2.2

    [root@node3 psutil-3.2.2]# python setup.py install

    安装psycopg2

    [root@node3 soft_bak]# tar zxvf psycopg2-2.6.1.tar.gz

    [root@node3 PGMonitor]# cd psycopg2-2.6.1

    [root@node3 psycopg2-2.6.1]# python setup.py build_ext --pg-config /usr/local/pg945/bin/pg_config  build

    [root@node3 psycopg2-2.6.1]# python setup.py build_ext --pg-config /usr/local/pg945/bin/pg_config  install

    安装setuptools

    [root@node3 soft_bak]# tar zxvf setuptools-19.2.tar.gz

    [root@node3 setuptools-19.2]# cd setuptools-19.2

    [root@node3 setuptools-19.2]# python setup.py install

    安装postgresql-perf-tools

    [root@node3 opt]# git clone https://github.com/CloudServer/postgresql-perf-tools

    Initialized empty Git repository in /opt/postgresql-perf-tools/.git/

    remote: Counting objects: 22, done.

    remote: Total 22 (delta 0), reused 0 (delta 0), pack-reused 22

    Unpacking objects: 100% (22/22), done.

    [root@node3 opt]# cd postgresql-perf-tools/

    启动PostgreSQL

    [postgres@node3 bin]$ ./pg_ctl -D ../data/ start

    server starting

    生成少量数据

    [postgres@node3 bin]$ ./pgbench -i -F 100 -s 142 -h localhost -p 5432 -U postgres postgres

    进程pgbench测试

     [postgres@node3 bin]$ ./pgbench -h localhost -p 5432 -c 10 -T 600

    [root@node3 postgresql-perf-tools]# ./pg-top.py  --db-host=localhost

     

  • 相关阅读:
    事务一致性
    面试汇总
    什么是时间复杂度?
    语言为什么都要实例化后才能用 ?实例化后这里东西是放在堆里面还是栈里面?
    LRU 算法——简单的淘汰算法
    Redis为什么可以做到10万的QPS?
    Redis基础
    Redis基于Set如何实现用户关注模型?
    资深技术Leader曹乐:如何成为技术大牛
    对MySQL查询结果进行替换
  • 原文地址:https://www.cnblogs.com/songyuejie/p/5198758.html
Copyright © 2020-2023  润新知