概要
gpactivatestandby [-d standby_master_datadir] [-f] [-a] [-q]
[-l logfile_directory]
gpactivatestandby -v
gpactivatestandby -? | -h | --help
描述
gpactivatestandby工具激活了一台备份主机上的后备Master实例, 并将其作为MPP数据库系统的活动
Master实例运行。被激活的后备Master节点有效 地成为MPP数据库的Master来接受端口上的客户端连接。
在初始化后备Master时,默认情况下使用与活动Master相同的端口。有关后备Master端口的信息。
用户必须从正在激活的Master主机上运行此工具,而不是在被停用的故障Master主机上运行。 运行此工具时候假设用户为系统配置了一台后备Master主机。 (参见gpinitstandby)。
该工具执行以下步骤:
- 停止后备Master上的同步进程 (walreceiver)
- 使用日志更新后备Master的系统目录表
- 激活后备Master成为系统中新的活动Master
- 重启带有新Master主机的MPP数据库系统
- 在MPP的主Master主机变得不可操作时,备份的后备Master主机充当“温备份”的角色。 后备Master通过事务日志复制进程(walsender和walreceiver) 保持最新状态,这两个进程一个运行在主Master,一个运行在后备Master,并使得主Master和 后备Master之间保持数据同步。
如果主Master出现故障,日志复制进程将关闭,后备Master可以通过使用gpactivatestandby 工具在其位置激活。一旦后备Master激活,复制的日志将用于重建最后一次成功提交事务之后 MPP中Master主机的状态。
为了使用gpactivatestandby来激活一个新的主Master主机,之前充当主Master的Master主机 则不能再运行。该工具会检查已被禁用的Master主机的数据目录中的postmaster.pid文件,如果发现该文件, 则会假定旧的Master机仍处于活动状态。在某些情况下,在运行gpactivatestandby(例如, 如果被禁用的Master主机进程被意外终止)之前,用户可能需要从被禁用的Master主机的数据目录中删除postmaster.pid。
激活后备Master之后,运行ANALYZE来更新数据库查询统计信息。
示例
gpactivatestandby -d /data