PostgreSQL 12 变更点评

作者 bluse wang 日期 2019-10-28
PostgreSQL 12 变更点评

PostgreSQL 12 于2019年10月3日。之前只阅读了它的中文概要说明
了解到了很多的性能提升。
但在阅读完整发行说明后,了解到了更多的有用的变更。
以下挑选一些我关心的,做一下介绍。

流复制和恢复

废弃了recvoery.conf

  • 将其功能并入了postgresql.conf
  • 使用recovery.signalstandby.signal文件来标记当前实例的状态。
  • 使用promove_trigger_file参数 替代了旧的 trigger_file参数。
  • 添加pg_promote()函数,可以在不操作文件系统的情况下,将从库,直接升级为主库。

pg_basebackup 操作行为变更

使用pg_basebackup -R ...完成基准备份后,在备份好的数据文件夹中,没有了recovery.conf
会多出一个standby.signal空文件。且在postgresql.conf中找不到 primary_conninfo项的配置。
此项配置会自动创建在postgresql.auto.conf文件中。

默认开启JIT

但在FreeBSD 12.0上,pkg包中,依旧默认选择保守地关闭了JIT支持。

授权控制

支持服务端核验证书域名

pg_hba.conf中通过配置clientcert=verify-full实现。这让服务器更安全!完整地实现了SSL安全传输。从源头堵住了第三方通过非法证书连接服务!

性能

btee增强

允许较小的多列btree索引,多列索引。提高了btree的索引性能和空间利用率。减少锁定开销,进一步提高了btree插入速度。

表分区增强

更好的分表性能

reindex 支持 concurently

支持异步重建索引