![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库内核,pgsql
文章平均质量分 76
iteye_6033
这个作者很懒,什么都没留下…
展开
-
使用pg_stat_statement监控pgsql遇到的问题
pg_stat_statements是PG中监控数据库活动的重要插件,通过它可以获得SQL的统计信息,例如该SQL被调用了多少次,返回了多少记录,在读写数据上花了多少时间,这个对于监控数据库很有帮助。默认情况下,这个插件可以统计5000个SQL,如果不够可以调整pg_stat_statements.max这个GUC。 一般情况下,可以通过源码安装该插件: ...2015-09-23 14:40:43 · 210 阅读 · 0 评论 -
说说pg中的检查点(checkpoint)之一
最近一直在使用pgbench对pg进行压测,在压测的过程中,发现checkpoint的发生会对数据库的性能产生极大的影响. 想看到最近有没有发生checkpoint,有两种比较简单的方式: 一个是不停的刷新pg_stat_bgwriter这个视图,这个视图中两个字段checkpoints_timed和checkpoints_req直接反映了PG已经...2015-10-13 23:18:20 · 556 阅读 · 0 评论 -
说说pg中的检查点(checkpoint)之二
前面讲了如何从外部来观察checkpoint,但是,实际上checkpoint内部是如何运行的呢?这里就有必要讲讲来龙去脉了。 目前,PG中有一个单独的checkpoint的进程。一般来说,在正常的启动过程中,这个进程是postmaster进程生成的,实际上是一个信号的处理函数heaper()生成的,具体的调用关系如下: main()->postma...原创 2015-10-22 22:13:37 · 456 阅读 · 0 评论 -
pgsql中的hook
为了支持用户对数据库的扩展,目前的PGSQL提供了很多hook来满足用户的需求。 一般说来,数据库提供了多种扩展机制,例如大家最常见的PLSQL,用户使用SQL来开发存储过程,为了更高的效率和更大的灵活性,也可以使用C语言来开发。为了支持用户更深入的扩展数据库,开源的数据库提供了更加灵活的方式。 说到对数据库的扩展,就不可避免要谈到数据库内部的运行机制,因为数据库的扩展是和内...原创 2014-10-08 16:59:45 · 289 阅读 · 0 评论