Recent Posts

PostgreSQL 黑科技 range 类型及 gist index 助力物联网(IoT)

7 minute read

背景 一位社区的兄弟跟我抱怨MYSQL里面查IP地址库并发几千每秒的查询数据库就抗不住了。 于是问他要来了他们的IP地址库数据和查询用的SQL以及MYSQL里面的表结构。 把数据转到PostgreSQL里面做一下相对应的压力测试,看看PostgreSQL的表现。 在其他的业务中,这样的需求也是屡见不鲜,比如...

PostgreSQL汉字转拼音或拼音首字母的应用

5 minute read

背景 能不能把在ORACLE里实现的汉字转拼音首字母的功能在PG里面实现以下。 比如股票软件,五粮液这个股,输入wly就可以出来了。 其实用到的就是汉字的拼音首字母,提高了用户体验。 在手机上打字比电脑上打字更慢,如果能实现这种类似的缩写可以大大提高用户体验,比如在搜索人名或者歌曲名,城市名时使用可以比较广...

PostgreSQL Selectivity Tablespace PITR - 部分表空间恢复

4 minute read

背景 今天在群里面一位老兄在问PostgreSQL能不能做基于数据库实例的PITR. 这位老兄可能是Oracle的用户, 因为ORACLE是支持基于表空间的RMAN恢复的. 至于为什么要这么做, 显然例如我要恢复的数据库只在某个表空间里面, 而其他表空间的数据我是不关心的. 基于表空间的恢复在恢复过程中占用更...

使用PostgreSQL和nagios设计统一的应用监控接口

6 minute read

背景 SKYPE的skytools中有使用PostgreSQL 作为message queue来记录数据库表的DML操作, 并且方便大家开发消息consumer和provider. 我想了想, 其实也可以利用PostgreSQL作为开放的应用监控接口. 接口可以用任何PostgreSQL支持的函数语言写, 本文...

PostgreSQL Logical Backup’s TOC File

11 minute read

背景 一位网友问到的几个逻辑备份和还原的问题, 本文对这几个问题进行简单的讲解和测试。 1. 调整逻辑备份的还原顺序. 2. 逻辑备份的TOC文件的格式是什么意思. 3. 是否可以通过修改TOC文件中schema的内容达到把表导入不同schema的目的? 这个想法可能来自oracle imp的fro...

PostgreSQL 9.1.3 plpgsql debugger module

2 minute read

背景 [更新] 该项目更新为pldebugger http://git.postgresql.org/gitweb/?p=pldebugger.git;a=summary 今天一位网友在群里面问PostgreSQL 9.0如何debug 函数. 我记得在8.3的时候有一个插件叫edb-debugger是可以...

explain postmaster.pid

1 minute read

背景 今天我们部门内部的数据库讲座, 提到了postmaster.pid这个文件, 我以前并没有仔细的去查看它每一行的含义. 刚好今天有机会查了一下源码, 再加上三个臭皮匠赛过一个诸葛亮. 终于把每一行的意思给搞明白了. 先来看一个postmaster.pid文件的内容 : cat postmaster.p...

PostgreSQL性能优化综合案例讲解 - 2

24 minute read

背景 备注 部署部分可以请参考 《PostgreSQL on Linux 最佳部署手册》 【调优阶段8】 1. 压力测试 pgbench -M prepared -r -c 1 -f /home/postgres/test/login0.sql -j 1 -n -T 180 -h 172.16.3.33 ...