安装完PG之后,下面可以进行PG基于流的主从复制:
附件为主从流复制的相关所有配置
创建复制用户,psql命令行执行:
CREATE USER stream WITH REPLICATION LOGIN PASSWORD 'stream'
配置完成之后启动主库,在从库执行:
pg_basebackup -h 192.168.199.123 -p 54321 -U stream -F p -P -D /data1/pgdata/
执行完成之后,将从库的postgresql.conf、pg_hba.conf、recovery.conf覆盖到/data1/pgdata目录下启动从库:
pg_ctl -D /data1/pgdata start
这时候从库会报:
< 2019-03-14 15:07:02.440 CST > FATAL: data directory "/data1/pgdata" has group or world access
< 2019-03-14 15:07:02.440 CST > DETAIL: Permissions should be u=rwx (0700).
这是因为Posgresql默认initdb的数据库目录权限是0700,可进行如下操作:
root用户下
chown -R postgres:postgres /data1/pgdata
chmod -R 0700 /data1/pgdata
即可,再次重启数据库即可。