postgreSQL数据库的监控及数据维护操作

发布时间:2022-04-21 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了postgreSQL数据库的监控及数据维护操作脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

目前postgreSQL数据库的管理,数据查询等都需要安装postgreSQL软件或安装pgadmin等,远程访问都需要先登录到服务器等繁琐的操作。如果是开发团队,那么每个开发,测试,管理人员都要经历这个麻烦的过程。

使用Treesoft数据库管理系统,基于web方式管理postgreSQL,只需安装一次,大家直接通过浏览器使用,维护及监控数据库,大大简化工作量。

监控的指标包括:连接数,数据库大小,表空间,锁情况,QPS事务数等。

Treesoft数据库管理系统,支持直接网络在线维护数据,数据的新增、删除、编辑,表结构的在线维护,在线备份还原等。更多强大的功能等待你的发掘。

补充:PostgreSQL数据库性能监控手段之慢SQL、死锁

之前接触PostgreSQL数据库甚少(此前经常使用MySQL、db2),直至入职当前某安全公司后,发现数据库都采用PostgreSQL,由于负责性能测试方向,经常需要诊断数据库方面是否存在性能问题,于是整理了PostgreSQL设置慢SQL、查看死锁等常用监控手段。

一、慢SQL设置步骤

1、笔者以工作中使用的docker为例,PostgreSQL版本为9.5:

PostgreSQL正常安装成功后,在docker 的/VAR/lib/postgresql/9.5/main/postgresql.conf文件中,

添加以下信息,保存并重启PostgreSQL数据库。

#shared_PReload_libraries = '' # (change requires restart)
shared_preload_libraries = 'pg_stat_statements'
pg_stat_statements.max = 1000
pg_stat_statements.track = top

2、在 PostgreSQL库中执行以下SQL:

CREATE EXTENSION pg_stat_statements;

3、初始化信息(清除历史监控信息):

select pg_stat_reset();
select pg_stat_statements_reset();

4、慢SQL查询(TOP 10):

SELECT query, calls, total_time, (total_time/calls) as average ,rows, 
    100.0 * shared_blks_hIT /nullif(shared_blks_hit + shared_blks_read, 0) AS hit_PErcent 
From  pg_stat_statements 
ORDER  BY average DESC LIMIT 10;

二、查看是否存在死锁

在 PostgreSQL库中执行以下SQL:

SELECT * From pg_stat_activity WHERE datname='数据库名称' and waiting='t';

注:waiting等于t时为死锁

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本宝典。如有错误或未考虑完全的地方,望不吝赐教。

脚本宝典总结

以上是脚本宝典为你收集整理的postgreSQL数据库的监控及数据维护操作全部内容,希望文章能够帮你解决postgreSQL数据库的监控及数据维护操作所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: