1、查看主备库状态,执行命令:pg_controldata
主库
备库
2、停止主库
pg_ctl stop
3、查看主库状态
4、备库状态切换
(1)确保备库状态为:in archive recovery
(2)执行切换命令
pg_ctl promote
(3)查看备库状态
select pg_is_in_recovery(); #f代表主库 t代表备库
(4)验证主备切换成功,在原备库写入数据
INSERT INTO test_sr VALUES (99);
5、原主库添加standby.signal文件
touch /data/pgsql/data/standby.signal
6、启动原主库,原主库切换为备库,查看主备状态
(需在主库postgres.conf中增加primary_conninfo参数配置,以保证主备切换后可以作为备库接收新主库wal数据,保障数据一致)
(1)启动原主库
pg_ctl start
(2)查看主备状态