postgresql 的数据库 有两种远程复制方法构造 hot_standby 数据库的方法。
第一基于文件复制的方法
第二是在文件复制的基础上增强了的流复制方法(9.X版本新增)
master 数据库配置
#postgresql.conf
wal_level = hot_standby #wal 写方法,使用 hot standby
archive_mode = on #启用归档模式
archive_command = 'xxxx' # 将归档文件复制到远端 standby数据库上。
wal_keep_segments = 300 默认每个wal 大小为16MB,需要保存足够的wal文件
standby 数据库配置(待命数据库)
#postgresql.conf
hot_standby = on
#recovery.conf
restore_command ='cp /var/lib/pgsql/archive/%f %p' # 恢复命令
standby_mode=on
master 数据库配置
#postgresql.conf
wal_level = hot_standby #wal 写方法,使用 hot standby
archive_mode = on #启用归档模式
archive_command = 'xxxx' # 将归档文件复制到远端 standby数据库上。
max_wal_senders = 5 # 启用流复制必备,发送到几个standby 数据库上,就需要设置为多少
wal_keep_segments = 300 默认每个wal 大小为16MB,需要保存足够的wal文件
standby 数据库配置(待命数据库)
pgpool 最近的研究成果
安装
redhat 7 安装
# yum install http://www.pgpool.net/yum/rpms/3.4/redhat/rhel-7-x86_64/pgpool-II-release-3.4-1.noarch.rpm
yum install pgpool-II-pg94
yum install pgpool-II-pg94-extensions
创建
/var/run/pgpool /var/log/pgpool