【PostgreSQL】数据库复制

发布时间:2020-03-11 05:27:59 作者:NOGYMS
来源:网络 阅读:412
异步流复制
[root@wallet01 ~]# su - postgres
[postgres@wallet01 ~]$ vi /var/lib/pgsql/9.6/data/pg_hba.conf
host    replication     postgres        192.168.1.0/24          md5

[postgres@wallet01 ~]$ vi /var/lib/pgsql/9.6/data/postgresql.conf
listen_addresses = '0.0.0.0'
max_wal_senders = 5
wal_level = hot_standby 

[postgres@wallet01 ~]$ pg_ctl restart
waiting for server to shut down.... done
server stopped
server starting

[root@wallet02 ~]# su - postgres
[postgres@wallet02 ~]$ pg_basebackup -h 192.168.1.201 -U postgres -F p -P -x -R -D /var/lib/pgsql/9.6/data 
Password: 
2161085/2161085 kB (100%), 1/1 tablespace

[postgres@wallet02 ~]$ vi /var/lib/pgsql/9.6/data/postgresql.conf
hot_standby = on

[postgres@wallet02 ~]$ vi /var/lib/pgsql/9.6/data/recovery.conf
standby_mode = 'on'
primary_conninfo = 'user=postgres password=postgres host=192.168.1.201 port=5432 sslmode=disable 
sslcompression=1 krbsrvname=postgres'

[postgres@wallet02 ~]$ pg_ctl start
server starting

[postgres@wallet01 ~]$ psql
psql (9.6.12)
Type "help" for help.

postgres=# select pid,state,client_addr,sync_priority,sync_state from pg_stat_replication;
 pid  |   state   |  client_addr  | sync_priority | sync_state 
------+-----------+---------------+---------------+------------
 2055 | streaming | 192.168.1.202 |             0 | async
(1 row)


同步流复制
[root@wallet01 ~]# su - postgres
[postgres@wallet01 ~]$ vi /var/lib/pgsql/9.6/data/pg_hba.conf
host    replication     postgres        192.168.1.0/24          md5

[postgres@wallet01 ~]$ vi /var/lib/pgsql/9.6/data/postgresql.conf
max_wal_senders = 5 
wal_level = hot_standby
synchronous_standby_names = 'wallet02,wallet03'

[root@wallet01 ~]# su - postgres
[postgres@wallet01 ~]$ pg_ctl reload
server signaled

[root@wallet02 ~]# su - postgres
[postgres@wallet02 ~]$ pg_basebackup -h 192.168.1.201 -U postgres -F p -P -x -R -D /var/lib/pgsql/9.6/data 
Password: 
2161085/2161085 kB (100%), 1/1 tablespace

[postgres@wallet02 ~]$ vi /var/lib/pgsql/9.6/data/postgresql.conf
hot_standby = on

[postgres@wallet02 ~]$ vi /var/lib/pgsql/9.6/data/recovery.conf
standby_mode = 'on'
primary_conninfo = 'application_name=wallet02 user=postgres password=postgres host=192.168.1.201 port=5432 sslmode=disable sslcompression=1'

[postgres@wallet02 ~]$  pg_ctl start
server starting

[root@wallet03 ~]# su - postgres
[postgres@wallet03 ~]$ pg_basebackup -h 192.168.1.201 -U postgres -F p -P -x -R -D /var/lib/pgsql/9.6/data 
Password: 
2161215/2161215 kB (100%), 1/1 tablespace

[postgres@wallet03 ~]$ vi /var/lib/pgsql/9.6/data/postgresql.conf
hot_standby = on

[postgres@wallet03 ~]$ vi /var/lib/pgsql/9.6/data/recovery.conf
standby_mode = 'on'
primary_conninfo = 'application_name=wallet03 user=postgres password=postgres host=192.168.1.201 port=5432 sslmode=disable sslcompression=1'

[postgres@wallet03 ~]$  pg_ctl start
server starting

[postgres@wallet01 ~]$ psql
psql (9.6.12)
Type "help" for help.
postgres=# select pid,state,client_addr,sync_priority,sync_state from pg_stat_replication;
 pid  |   state   |  client_addr  | sync_priority | sync_state 
------+-----------+---------------+---------------+------------
 1968 | streaming | 192.168.1.202 |             1 | sync
 2018 | streaming | 192.168.1.203 |             2 | potential


推荐阅读:
  1. postgresql with子句
  2. MySQL和PostgreSQL之间跨数据库复制讲义

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

postgresql pg_basebackup gr

上一篇:Nginx深入优化之更改进程数及配置网页压缩

下一篇:TypeScript用法分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》