关键字:
KES、归档复制、部署、配置、金仓数据库
概述
在主机中将产生的WAL日志文件进行归档,备机使用这些归档文件同步进行恢复,以便于在主机宕机等有需要的时候,将备机升为主机。
主机与备机
主机:主机为一个RAC节点集群,其必须开启归档。每个节点会实时的将已写入完成的日志文件归档到指定的目录,在该目录中每个节点需要有一个以节点号命名的子目录,并在该子目录中存储该节点的所有被归档的日志文件。同时主机上的最小节点也会负责将当前未启动的节点的残留日志进行归档。
备机:备机也是一个RAC集群,备机集群的数据集簇是从主机备份而来的。可以是从主机启动前(包括异常停机)直接复制的,或者是从主机执行物理备份而生成的数据集簇(例如sys_rman或sys_basebackup所生成的备份),此时备机会从backup_label中读取恢复起点。
共享归档目录
主机与备机之间必须能以某种方式共享归档目录,可选的方式有:
1.scp
采用该方式需要在主机集群的所有节点与备机集群的所有节点两两之间均配置免密,然后在archive_command参数中以scp的方式将被归档的日志文件复制到备机集群内的数据盘中。
2.共享存储
采用该方式需要在主机集群的所有节点与备机集群的所有节点之间构建共享存储系统,例如gfs2或nfs,然后在archive_command参数中以cp的方式将被归档的日志文件复制到共享存储中。
主机的配置
主机配置文件中参数选项说明
配置选项 | 必填项 | 默认值 | 类型 | 取值范围 | 说明 |
archive_mode | 是 | Off | 字符串 | off/on/always | 是否开启归档模式,必须为on/awlays才能启动基于归档的复制。 |
archive_command | 是 | 无 | 字符串 | 无 | 配置归档的命令,用于归档。 |
archive_timeout | 是 | 无 | 字符串 | 无 | 归档模式开启的情况下,超过此时间没有归档,执行一次归档。 |
其中配置文件中的选项不区分大小写,每个选项占用一行,选项和选项值之间通过等号进行连接,选项的值可以有引号也可以没有引号,如果字符串中有空格、等号等特殊值,则必须加引号。可以通过在正文内容前加入“#”表示注释该行后面的配置。具体格式如下:
具体配置文件格式举例
archive_mode = on archive_command='scp %p kingbase@10.12.11.3:/sharedata/data_gfs2/kingbase/backup/pg_wal/%f ' archive_timeout =600 |
备机的配置
在data中建立recovery.signal文件,并补充配置文件。
备机配置文件中参数选项说明
配置选项 | 必填项 | 默认值 | 类型 | 取值范围 | 说明 |
restore_command | 是 | 无 | 字符串 | 无 | 恢复的命令,用于恢复 |
recovery_end_command | 否 | 无 | 字符串 | 无 | 恢复结束之后,执行的命令 |
archive_cleanup_command | 否 | 无 | 字符串 | 无 | 用于清理归档文件 |
其中配置文件中的选项不区分大小写,每个选项占用一行,选项和选项值之间通过等号进行连接,选项的值可以有引号也可以没有引号,如果字符串中有空格、等号等特殊值,则必须加引号。可以通过在正文内容前加入“#”表示注释该行后面的配置。具体格式如下:
具体配置文件格式举例
restore_command = '/u01/kingbase/new-standby/postgresql_master/release/bin/pg_standby -d -s 2 -t /sharedata/data_gfs2/kingbase/trigger.0 /sharedata/data_gfs2/kingbase/backup/pg_wal %f %p %r 2>>standby.log' recovery_end_command = 'rm -rf /sharedata/data_gfs2/kingbase/trigger.0' archive_cleanup_command = '/home/kingbase/ kingbase /postgresql_master/release/bin/pg_archivecleanup -n -d /sharedata/data_gfs2/kingbase/kingbase/backup/sys_wal %r >>cleanup.log ' |