PostgreSQL流复制搭建
环境信息
主库为已初始化好数据库PG实例,备库为已安装好软件但未初始化的数据库
ip | status | name |
---|---|---|
192.168.100.10 | 主库 | db |
192.168.100.12 | 备库 | stb |
主库需配置的参数
- hot_standby 设置为ON,这样备库可以供查询使用
- wal_level 应设置为replica, or logical
- max_wal_senders 默认是10 , 不要设置为小于2
- synchronous_standby_names 如果使用同步复制,这里需要设置standby的名字
- wal_keep_segments 设置主库上wal的保留个数,防止WAL日志被删除但还未传送到备库上
- synchronous_commit 同步复制选项:
设置为on,代表需要等待备库应用完事务日志并且数据刷到磁盘中,主库才可以返回成功
设置为remote_apply ,代表需要等待备库应用完事务日志,主库即可返回成功
设置为remote_write,代表需要等待备库将事务日志写入到磁盘中,主库即可返回成功
设置为local,代表事务日志写入到主库磁盘中,主库即可返回成功 // 在同步复制中不能设置为local
pg_hba.conf 文件中需要添加repliaction 的权限,需要先创建repliaction 用户
- 创建用户