postgresql 9.1 暂停 stream 后使用 rsync 异机同步文件

pgsql 环境下有时需要每天同步数据或者新加一个salve时,同时又需要对master不造成影响时,可以采用如下方式。

1、暂停 stream 复制

$ psql
psql (9.1.22)
Type "help" for help.
postgres=# select * from pg_xlog_replay_pause();
 pg_xlog_replay_pause 
----------------------

(1 row)

2、使用 rsync 同步文件

 # rsync -avp /pg_tbs/idx    root@10.10.2.221:/pg_tbs/
 # rsync -avp /pg_tbs/data   root@10.10.2.221:/pg_tbs/
 # rsync -avp /var/lib/postgresql/9.1/main --exclude=pg_xlog root@10.10.2.221:/var/lib/postgresql/9.1/

或者

 # rsync -rlgovp /pg_tbs/idx    root@10.10.2.221:/pg_tbs/
 # rsync -rlgovp /pg_tbs/data   root@10.10.2.221:/pg_tbs/
 # rsync -rlgovp /var/lib/postgresql/9.1/main --exclude=pg_xlog root@10.10.2.221:/var/lib/postgresql/9.1/

 # rsync -rlgocvp /pg_tbs/idx    root@10.10.2.221:/pg_tbs/
 # rsync -rlgocvp /pg_tbs/data   root@10.10.2.221:/pg_tbs/
 # rsync -rlgocvp /var/lib/postgresql/9.1/main --exclude=pg_xlog root@10.10.2.221:/var/lib/postgresql/9.1/

3、启动 stream 复制

$ psql
psql (9.1.22)
Type "help" for help.

postgres=# select * from pg_xlog_replay_resume();
 pg_xlog_replay_resume 
-----------------------

(1 row)
posted @ 2018-01-22 11:32  peiybpeiyb  阅读(271)  评论(0编辑  收藏  举报