HGDB 流复制一主两备切换注意事项
来源:互联网 发布:深圳软件协会 编辑:程序博客网 时间:2024/06/06 07:28
一主两从切换的话 可以按照以下两种架构中的方式2实现:
HGDB 流复制一主两从流复制切换注意事项
配置NTP时间同步
以下涉及两种架构:
架构1:一主(A)一从(B)再一从(C)
主机A宕机后:切换从机B为主库时:
方式1:使用pg_ctl prompte方式将B机提升为主机,会导致第二个从机C同步中断
方式2:使用pg_ctl stop方式将从机B关闭,然后mv recovery.conf改名,然后pg_ctl start,此时从机B变为主机,从机C同步正常
***************************************************************************************************
架构2:一主(A)两从(B、C)
方式1:当主端A宕机后,如果使用pg_ctl promote方式将其中一个备机提升为主机,则另一备机的同步也会中断。
方式2:当主端A宕机后,两从机(B、C)也要pg_ctl stop
然后将从机(B)的recovery.conf改名为recovery.d
将从机C的recovert.conf中的主机IP改为从机B的IP
启动从机B为主机
启动从机C
此时新主机B与从机C仍能同步正常
配置同步模式的话,注意备机的recovery.conf中要包含application_name=hg,其中hg为备机本身主机名
[highgo@hg data]$ cat recovery.conf
standby_mode = 'on'
primary_conninfo = 'application_name=hg user=highgo host=192.168.6.10 port=5866 sslmode=prefer sslcompression=1
highgo=# select * from pg_stat_replication;
其中sync_state列值可以看出当前流复制是同步(sync)还是异步(async)
highgo=# select * from pg_stat_replication;
pid | usesysid | usename | application_name | client_addr | client_hostname | client_port | backend_start | backend_xmin | state | sent_lo
cation | write_location | flush_location | replay_location | sync_priority | sync_state
--------+----------+---------+------------------+-----------------+-----------------+-------------+-------------------------------+--------------+-----------+--------
-------+----------------+----------------+-----------------+---------------+------------
195520 | 10 | highgo | db2 | 192.168.100.109 | | 33998 | 2017-06-16 10:18:22.264831+08 | | streaming | 0/95000
8B0 | 0/950008B0 | 0/950008B0 | 0/950008B0 | 2 | potential
195521 | 10 | highgo | db1 | 192.168.100.108 | | 40278 | 2017-06-16 10:18:31.647778+08 | | streaming | 0/95000
8B0 | 0/950008B0 | 0/950008B0 | 0/95000758 | 1 | sync
(2 rows)
同步模式一主两备的话,状态显示如上,2个备机,先启动的显示sync,后启动的显示potential;
当显示sync的主机pg_ctl stop后,另一台主机同步状态由potential变为sync;
只要两个备机中有一个是活动的,主端就能提交成功,且能正常同步至活动的备机,不需要两个备机数据库服务都处于启动状态 。
HGDB 流复制一主两从流复制切换注意事项
配置NTP时间同步
以下涉及两种架构:
架构1:一主(A)一从(B)再一从(C)
主机A宕机后:切换从机B为主库时:
方式1:使用pg_ctl prompte方式将B机提升为主机,会导致第二个从机C同步中断
方式2:使用pg_ctl stop方式将从机B关闭,然后mv recovery.conf改名,然后pg_ctl start,此时从机B变为主机,从机C同步正常
***************************************************************************************************
架构2:一主(A)两从(B、C)
方式1:当主端A宕机后,如果使用pg_ctl promote方式将其中一个备机提升为主机,则另一备机的同步也会中断。
方式2:当主端A宕机后,两从机(B、C)也要pg_ctl stop
然后将从机(B)的recovery.conf改名为recovery.d
将从机C的recovert.conf中的主机IP改为从机B的IP
启动从机B为主机
启动从机C
此时新主机B与从机C仍能同步正常
配置同步模式的话,注意备机的recovery.conf中要包含application_name=hg,其中hg为备机本身主机名
[highgo@hg data]$ cat recovery.conf
standby_mode = 'on'
primary_conninfo = 'application_name=hg user=highgo host=192.168.6.10 port=5866 sslmode=prefer sslcompression=1
highgo=# select * from pg_stat_replication;
其中sync_state列值可以看出当前流复制是同步(sync)还是异步(async)
highgo=# select * from pg_stat_replication;
pid | usesysid | usename | application_name | client_addr | client_hostname | client_port | backend_start | backend_xmin | state | sent_lo
cation | write_location | flush_location | replay_location | sync_priority | sync_state
--------+----------+---------+------------------+-----------------+-----------------+-------------+-------------------------------+--------------+-----------+--------
-------+----------------+----------------+-----------------+---------------+------------
195520 | 10 | highgo | db2 | 192.168.100.109 | | 33998 | 2017-06-16 10:18:22.264831+08 | | streaming | 0/95000
8B0 | 0/950008B0 | 0/950008B0 | 0/950008B0 | 2 | potential
195521 | 10 | highgo | db1 | 192.168.100.108 | | 40278 | 2017-06-16 10:18:31.647778+08 | | streaming | 0/95000
8B0 | 0/950008B0 | 0/950008B0 | 0/95000758 | 1 | sync
(2 rows)
同步模式一主两备的话,状态显示如上,2个备机,先启动的显示sync,后启动的显示potential;
当显示sync的主机pg_ctl stop后,另一台主机同步状态由potential变为sync;
只要两个备机中有一个是活动的,主端就能提交成功,且能正常同步至活动的备机,不需要两个备机数据库服务都处于启动状态 。
阅读全文
0 0
- HGDB 流复制一主两备切换注意事项
- hgdb流复制备库提升为主库
- postgresql 流复制切换
- pgpool流复制&failover故障切换
- Undo Tablespace 切换注意事项
- Fragment切换注意事项
- (一)切换yum注意事项
- eclipse复制项目,注意事项
- java 复制文件注意事项
- 复制myeclipse工程,注意事项
- eclipse复制项目注意事项
- 复制Tomcat注意事项
- Redis主从复制注意事项
- Postgresql 异步流复制 详解及配置切换
- 【转】Undo Tablespace 切换注意事项
- tomcat切换到weblogic注意事项
- android 横竖屏幕切换注意事项
- ARC切换及开发注意事项
- 任务队列
- Beginning Spring学习笔记——第11章 使用Spring开发REST风格的Web服务
- KBuild MakeFile介绍(转)
- search-for-a-range
- 对Scanner的使用
- HGDB 流复制一主两备切换注意事项
- 1756:八皇后(2.5基本算法之搜索)
- linux中的子进程和父进程
- Java List集合的遍历
- 编程范式12 笔记 编译预处理 宏展开
- 阿里云开源bigbluebutton1.1在线网络会议系统安装及开发Api
- 《朗读者之遇见》
- 搭建流复制时生成基础备份的方式可以使用pg_start_backup
- 使用POI导出Excel