当前位置: 首页 > news >正文

PostgreSQL 17 发布了!非常稳定的版本

📢📢📢📣📣📣
作者:IT邦德
中国DBA联盟(ACDU)成员,10余年DBA工作经验,
Oracle、PostgreSQL ACE
CSDN博客专家及B站知名UP主,全网粉丝10万+
擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,
安装迁移,性能优化、故障应急处理

PostgreSQL 17已与2024年9月26日正式发布了,如约而至, 每年1个大版本, 每个大版本都是LTS版,那么让我们一起来看下这次到底做了哪些更新!

1.版本迭代

PostgreSQL 全球开发组计划每年发布一个包含新功能的主要版本(major version)。同时,对于每个主要版本,至少每 1个季度会发布一个次要版本(minor release),用于修复问题和安全漏洞。

对于主要版本,PostgreSQL 全球开发组将会提供5年的更新支持,然后在发布一个最终次要版本之后停止提供支持。

2.新增特性

块级别增量备份与恢复:极大提高了备份大型数据库的效率,减少了全拷贝的需求。

逻辑复制 Failover 和 Switchover:增强了逻辑复制功能,支持在流复制基础上的故障切换,提高了高可用性。

Copy 错误处理:改进了 Copy 命令的错误处理机制,支持跳过错误行,同时记录错误行

JSON 类型处理能力增强:主要增强了 JSONPath 功能,使得处理 JSON 数据更为顺手

Vacuum 性能改进:引入了 TIDStore 数据结构,突破了存储 Dead Tuple 的内存限制,大幅提升了 Vacuum 效率

索引性能优化:支持并行创建 Brin 索引,GIST/SP-GIST 索引支持增量排序,BTree 倒序增强等。

高并发锁竞争优化:通过一系列 WAL 锁优化,提升了高并发写入性能

性能优化:包括批量导入性能提升、Merge Append 提升 Union 性能、增量排序提升 Group By 性能、减少分区表 Partitionwise Join 内存消耗等。

新增 GUC 参数:新增了一系列的 GUC 参数,提升数据库管理灵活性

SQL 语法、函数功能增强:包括分区表分裂与合并、Merge 语法、生成列、Exclude 约束等功能增强。

管理手段增强:支持 Login 事件、新增维护角色、读写分离一致性函数支持等。

内部统计信息、系统视图增强:新增等待事件视图、增强检查点统计信息、增强并行操作统计信息等。

Table Access Method 接口增强:新增了自定义 Option 的接口,Undo 回滚段可能即将到来。

扩展接口能力增强:新增钩子、支持自定义等待事件、新增自定义注入点、支持 DSM 注册等。

Wire Protocol、Libpq 协议增强:继续加强,希望国产数据库厂商开发兼容 MySQL、SQL Server 等协议更容易。

3.如何升级

PostgreSQL版本发布规则,一年一个大版本,一个季度一个小版本;PG遇到的BUG问题,社区会很快进行修复,并在下一个版本中发布,因此有必要进行对数据库版本升级。实际的生产环境中,升级前需要详细的阅读各版本的release说明。

目前小版本升级的步骤
1.安装最新版本数据库
2.停止数据库实例
3.对数据目录进行备份
4.使用新版本启动数据库
5.调整环境变量,PGHOME/LD_LIRARAY_PATH等

目前PG大版本的升级方法主要有以下四种方式:
1.转储数据的方式
pg_dump或pg_dumpall导出数据,pg_restore或psql导入
2.通过pg_upgrade进行升级
3.通过逻辑复制的方式进行版本升级
内置逻辑或者pg_logical 扩展插件

4.总结

这些新特性和改进不仅提升了数据库的性能和功能,也增强了数据库的可用性和灵活性,使得 PostgreSQL 17 成为一个值得期待的版本。


http://www.mrgr.cn/news/37388.html

相关文章:

  • 今年双十一不被割韭菜!要买就要高品质好物~总结五款好物推荐!
  • HCIP——HCIA回顾
  • 26 基于STM32的智能门禁系统(指纹、蓝牙、刷卡、OLED、电机)
  • 【JavaScript】encodeURI 和 decodeURI
  • 生成速度提升70%,32K版本上新,讯飞星火API全新升级!
  • 【通知】“长三角档案数字资源长期保存与数据安全治理”专题培训
  • 【黑马软件测试一、二】软件测试基础与Linux、数据库
  • 顶象滑块、顶象验证码就这?2024-09-27 最新版(持续更新)确定不点进来看看?
  • 2万字长文助你快速入门AIGC:包含底层原理、应用场景、热门工具、行业现状…
  • 详解JavaScript中属性getter和setter
  • JVM 类加载机制2
  • 阻塞信号(`blockSignals(true)`)的作用
  • c++----继承(初阶)
  • vue项目中的node、node-sass、sass-loader之间的版本关系
  • kubernetes调度2
  • 双十一有哪些数码家电值得入手?双十一五款必入手名单大曝光
  • 3.5k star 一款开源简单好用的前端TAG标签组建库
  • Oracle EBS中 成本管理 模块的财务流程概览
  • 影刀--- 自动化机器人需要了解的三大逻辑
  • 海外电商SaaS平台的接口对接