POWA搭建及使用方法
Powa是什么?
PoWA是一个监控postgresql工作负载的WEB型分析器,可以通过收集性能统计数据并提供实时图表和图形来帮助监视和调整PostgreSQL的工作状态。
主要功能
1、收集各个库里的sql执行时间,并将执行时间较长的sql罗列出来,并详细的记录sql消耗的资源情况。
2、根据sql的执行时间及语句进行优化建议并提示优化后提升的效率。
3、通过图形直观的展示postgresql对硬件资源的消耗情况。
搭建步骤
首先搭建好postgresql环境,并添加postgres的环境变量 export LD_LIBRARY_PATH=/home/postgres/bin:/home/postgres/lib;
需要准备的插件
btree_gist pg源码自带
pg_stat_statements pg源码自带
pg_qualstats 下载地址:https://github.com/powa-team/pg_qualstats
powa-archivist 下载地址:https://github.com/powa-team/powa-archivist
pg_stat_kcache 下载地址:https://github.com/powa-team/pg_stat_kcache
HypoPG 下载地址:https://github.com/HypoPG/hypopg
pg_track_settings 下载地址:https://github.com/rjuju/pg_track_settings
所有插件的编译方法均为make &&make install 为防止机器上有多个posrgresql版本导致编译错误可以修改Makefile中PG_CONFIG=/home/postgres/bin/pg_config (即pg_config的绝对路径)
全部编译完毕后创建powa数据库及powa超级用户
Create database powa;
Create user powa with superuser password ‘123’;密码根据需要自己修改
修改postgresql.conf
log_min_duration_statement = 0
pg_qualstats.sample_rate = 1
pg_stat_statements.max = 10000
pg_stat_statements.track = all
shared_preload_libraries = ‘pg_stat_statements,powa,pg_qualstats,pg_stat_kcache’
然后重启数据库
重启完毕后登陆powa数据库执行
CREATE EXTENSION btree_gist;
CREATE EXTENSION pg_stat_statements;
CREATE EXTENSION pg_qualstats;
CREATE EXTENSION pg_stat_kcache;
CREATE EXTENSION powa;
CREATE EXTENSION hypopg;
其中只有hypopg插件需要每个库都建立,其余插件只需要在powa库下创建。
数据库环境搭建完毕后进行powa-web工具搭建
在有网络并已安装了pip的环境下
直接执行pip install powa-web 即可完成全部安装
在无网络状态下只能使用源码进行编译,需要准备的环境有:
python 2.6, 2.7 or > 3
psycopg2
backports-abc-0.5
futures-3.2.0
psycopg2-2.7.4
six-1.11.0
ordereddict-1.1.tar
singledispatch-3.4.0.3
sqlalchemy-0.7.2
tornado-2.1
powa-web-3.1.4
所有插件的编译命令均为 python setup.py install
安装完毕powa-web后需要添加powa-web的配置文件
vi /etc/powa-web.conf
添加
servers={
‘main’: {
‘host’: ‘localhost’,
‘port’: ‘5432’,
‘database’: ‘powa’
}
}
cookie_secret=”SUPERSECRET_THAT_YOU_SHOULD_CHANGE”
添加完毕后执行powa-web启动 powa工具 并按照网址提示用浏览器登录 用户名为powa 密码为powa数据库用户的密码
postgresql相关从业者
评论 (1)
yico| 2019年4月25日
学习到了。。。谢谢。辛苦了。 为citus 和 postgresql 在中国的发展 做了 自己的贡献