半个PostgreSQL DBA,热衷于数据库相关的技术。我的ppt分享https://pan.baidu.com/s/1eRQsdAa https://github.com/chenhuajun https://chenhuajun.github.io
发布时间:2015-01-21 19:06:05
之前的一篇博客《PostgreSQL分区表的性能损耗验证》中,遇到100并发单行更新发生死锁(问题1)的问题。这么简单的一条SQL,100个并发时居然会发生死锁,太不可思议了。发生死锁的SQLupdate_smallrange.sql:\setrandom id 1 10000update maintb set name = 'aaaaa12345'&nbs.........【阅读全文】
发布时间:2015-01-20 14:39:59
在CentOS 6.5下运行一个高并发的pgbench测试,发现并发数超过一定数量(max_connections已经设成足够大了)的时候,执行会出错。pgbench -n -r -c 250 -j 250 -T 2 -f update_smallrange.sql错误消息:Connection to database "" failed:could not connect to server: Resource temporarily unavailableIs the server .........【阅读全文】
发布时间:2015-01-19 19:59:04
之前的一篇博客《PostgreSQL分区表的性能损耗验证》中,遇到1000分区的分区表更新和删除都执行失败(问题3)的问题。经过简单的调查发现原因竟然是OOM导致进程被杀。......【阅读全文】
发布时间:2015-01-18 12:13:05
在使用PostgreSQL的过程中,有时会遇到区域和字符编码相关的问题。我们就解决过几次这样的问题,因此感到这样的问题比较常见,所以去年我做了一个总结性的资料《PostgreSQL中的区域和编码》,并在PostgreSQL中国用户大会上进行了分享。目前虽然也可以在网上找到这份资料,但是我发现在线浏览有乱码(可能只是部分环境上是乱.........【阅读全文】
发布时间:2015-01-15 19:42:29
简单查询和扩展查询是PG前端和后端交互的时候,2种不同交互方法。简单查询时,前端发一个包含SQL的包过去,后端执行后返回结果。扩展查询则是把简单查询切分成Parse,Bind,Describe,Execute,Close等几个步骤,以达到执行计划复用的目的。扩展查询还有防止SQL注入,减少通信数据量(使用binary形式传参)的效果。更详细的描.........【阅读全文】