千家信息网

【PostgreSQL】数据库复制

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,异步流复制[root@wallet01 ~]# su - postgres[postgres@wallet01 ~]$ vi /var/lib/pgsql/9.6/data/pg_hba.confho
千家信息网最后更新 2025年01月20日【PostgreSQL】数据库复制
异步流复制[root@wallet01 ~]# su - postgres[postgres@wallet01 ~]$ vi /var/lib/pgsql/9.6/data/pg_hba.confhost    replication     postgres        192.168.1.0/24          md5[postgres@wallet01 ~]$ vi /var/lib/pgsql/9.6/data/postgresql.conflisten_addresses = '0.0.0.0'max_wal_senders = 5wal_level = hot_standby [postgres@wallet01 ~]$ pg_ctl restartwaiting for server to shut down.... doneserver stoppedserver 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.confhot_standby = on[postgres@wallet02 ~]$ vi /var/lib/pgsql/9.6/data/recovery.confstandby_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 startserver starting[postgres@wallet01 ~]$ psqlpsql (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.confhost    replication     postgres        192.168.1.0/24          md5[postgres@wallet01 ~]$ vi /var/lib/pgsql/9.6/data/postgresql.confmax_wal_senders = 5 wal_level = hot_standbysynchronous_standby_names = 'wallet02,wallet03'[root@wallet01 ~]# su - postgres[postgres@wallet01 ~]$ pg_ctl reloadserver 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.confhot_standby = on[postgres@wallet02 ~]$ vi /var/lib/pgsql/9.6/data/recovery.confstandby_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 startserver 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.confhot_standby = on[postgres@wallet03 ~]$ vi /var/lib/pgsql/9.6/data/recovery.confstandby_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 startserver starting[postgres@wallet01 ~]$ psqlpsql (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


0