暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

pg_checksums 1.0 支持在线校验block checksum,限速,兼容9.3以上所有pg版本

digoal 2019-10-27
1200

作者

digoal

日期

2019-10-27

标签

PostgreSQL , 在线block校验


背景

PostgreSQL 9.3开始引入了数据文件数据块的checksum功能(wal,xlog的block checksum一直存在),当时只能在初始化数据库的时候指定是否开启,设置后就不能修改。

checksum 主要用来发现数据的逻辑错误。

从12的版本开始,支持了数据库停止状态下(离线)开启或关闭数据文件block checksum, 使用工具pg_checksums:

https://www.postgresql.org/docs/12/app-pgchecksums.html

pg_checksums的功能包括:

1、开启|关闭 数据文件block checksum

2、检查指定文件(或全集群)的checksum是否正确。

3、实时报告检查或开启block checksum的进度。

目前pg_checksums还需要改进的问题是:

1、限速,在线处理时担心对数据库的IO造成太大影响,有限速功能会好很多。

2、在线修改checksum,不需要停库操作。对于生产环境很重要。

3、支持9.3以上所有版本PG(9.3以上版本就支持checksum)

以上几个功能在新版pg_checksums已经完全支持.

https://github.com/credativ/pg_checksums

参考

https://github.com/credativ/pg_checksums

https://www.credativ.com/blog/pgchecksums-10-released

https://www.postgresql.org/docs/12/app-pgchecksums.html

PostgreSQL 许愿链接

您的愿望将传达给PG kernel hacker、数据库厂商等, 帮助提高数据库产品质量和功能, 说不定下一个PG版本就有您提出的功能点. 针对非常好的提议,奖励限量版PG文化衫、纪念品、贴纸、PG热门书籍等,奖品丰富,快来许愿。开不开森.

9.9元购买3个月阿里云RDS PostgreSQL实例

PostgreSQL 解决方案集合

德哥 / digoal's github - 公益是一辈子的事.

digoal's wechat

文章转载自digoal,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论