PostgreSQL 支持创建自定义函数,相比于 SQL 对表进行简单增删改查操作,自定义函数能够实现各种复杂的逻辑。PostgreSQL 自定义函数支持的语法主要包括 SQL,plsql,C语言函数等。1. 创建函数的语法CREATE [...
- 2022-08-01 21:58:54
- 浏览(793)
- 分类:PostgreSQL基础教程
PostgreSQL 支持两阶段提交事务(two-phase commit),简称 2PC。单机版本的 PG 很少会用到 2PC 事务,而基于 PG 的分布式数据库,其事务管理器大多数都是基于 PG 的 2PC 事务或者在其基础上进行修改实...
- 2022-07-28 10:31:26
- 浏览(918)
- 分类:PostgreSQL基础教程
1、在主库创建物理复制槽可以手动在主库创建物理复制槽,也可以不创建,在备库使用 pg_basebackup 创建备份时指定参数 -C -S 来创建复制槽。手动创建复制槽的 SQL 语句如下:select * from pg_create_p...
- 2022-07-14 16:43:16
- 浏览(1349)
- 分类:PostgreSQL基础教程
源码版本:pg 14.3源文件:src/backend/replication/syncrep.c原文地址:https://www.mytecdb.com/blogDetail.php?id=2391、PG同步复制简介同步复制是 pg 9....
- 2022-06-30 19:08:05
- 浏览(471)
- 分类:PostgreSQL源码分析
PostgreSQL 的日志可以配置成 csv 格式,csv 格式的日志能够像 excel 文件一样作为电子表格打开,也可以导入到数据库表中,使用 SQL 语句做进一步的处理和分析,比如相同 SQL 去重、分组聚合、执行时间过滤、SQL类型...
- 2022-06-27 15:52:23
- 浏览(438)
- 分类:PostgreSQL基础教程
源码版本:PG13Free Space Map 是 PostgreSQL 空闲空间高效管理的一种方式。堆表由于频繁的 update, delete,vacuum,会导致页面出现大小不一的空闲空间,FSM 机制能够有效的管理这些空闲空间,当...
- 2022-06-21 15:49:12
- 浏览(664)
- 分类:PostgreSQL源码分析
PostgreSQL 源码提供了编译选项用来测试代码覆盖率,打开 --enable-coverage 选项,编译安装,然后执行回归测试或者其他的测试,最后生成代码覆盖率报告。下面以 CentOS 7.9 环境为例,介绍整个操作流程。0、依赖...
- 2022-06-07 18:19:38
- 浏览(403)
- 分类:PostgreSQL源码分析
源码版本:pg 11.9源码文件:src/backend/storage/ipc/latch.cLatch 是 pg 中使用较多的一种数据结构,用于等待某个事件的发生或者超时,常见的 Latch 相关函数如下:InitLatch(),初始化...
- 2022-05-28 15:20:19
- 浏览(638)
- 分类:PostgreSQL源码分析
pg 主备流复制可以设置人为的复制延迟,这个功能在某些场景下有巨大的作用,比如误删数据的恢复。通过设置一个延迟复制的备库,主库上被误删的数据,可以在备库上找回来。延迟时间可以自定义设置,超过延迟时间,则无法找回误删的数据。下面通过一个案例来...
- 2022-05-25 14:08:03
- 浏览(375)
- 分类:PostgreSQL安装部署
源码版本:pg 11.3源码文件:src/backend/storage/buffer/localbuf.clocal buffer 主要用于临时表的快速缓存管理,减少磁盘 IO 操作,提升性能。对 local buffer 的操作不需要写...
- 2022-04-27 10:59:58
- 浏览(388)
- 分类:PostgreSQL源码分析