加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

PostgreSQL完全刷缓存补丁

发布时间:2020-12-13 17:34:09 所属栏目:百科 来源:网络整理
导读:本文及其附件以PostgreSQL协议发布 曾经有朋友问过如何把缓存清空,没有这个功能,测试的时候非常不方便。 我做了一个补丁抛砖引玉,见附件。 提供两个SQL命令,尽量兼容Oracle: 1、ALTER SYSTEM CHECKPOINT; 这个其实就是将 CHECKPOINT 封装到一个新语法,

本文及其附件以PostgreSQL协议发布

曾经有朋友问过如何把缓存清空,没有这个功能,测试的时候非常不方便。

我做了一个补丁抛砖引玉,见附件。

提供两个SQL命令,尽量兼容Oracle:

1、ALTER SYSTEM CHECKPOINT;
这个其实就是将 CHECKPOINT 封装到一个新语法,没什么改动。
2、ALTER SYSTEM FLUSH SHARED_BUFFER / BUFFER_CACHE;
清空数据库缓存,将发生修改的数据刷到硬盘,脏块写出功能仍然是调用PG核心代码。

主要说明
1、语法是由Flex和Bison(Yacc)完成解析,请自行查阅它们的文档。
2、SYSTEM关键字由非保留改为保留
3、增加非保留关键字 FLUSH
4、SHARED_BUFFER 和 BUFFER_CACHE 并没有定义成关键字,而是用字符串比较
5、GANQI_VERSION是我自己定义的工程名,用的删掉或者在编译环境设定为1即可
6、仅经过简单测试,我个人无法保证代码安全,不要用在生产环境

不会发附件,用外部链接
http://bbs.pgsqldb.com/client/read.php?action=cy_download_click&post_fj_auto_bh=4460

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读