案例现象:

KingbaseES V8R6集群备库启动后,加入集群失败,sys_log日志信息提示,如下图所示:


适用版本:

kingbaseES V8R6

一、问题分析

在timeline对应的history文件中会记录每次timeline切换时所对应的lsn,如下图所示,在sys_wal目录下:

.......
-rw------- 1 kingbase kingbase 1.2K Feb 21 09:44 0000001B.history
-rw------- 1 kingbase kingbase 1.2K Feb 21 09:44 0000001C.history
-rw------- 1 kingbase kingbase 1.2K Feb 21 09:44 0000001D.history
.....

查看timelinehistory文件的信息:

  如下所示,history文件最左列显示timeline_id,第二列显示timeline切换时对应的lsn。
[kingbase@node102 sys_wal]$ cat  0000001D.history
.......
24 4/4D0000A0 no recovery target specified
25 4/51001D00 no recovery target specified
26 4/520000A0 no recovery target specified
27 4/540000A0 no recovery target specified
28 4/580000A0 no recovery target specified

二、问题解决

备库启动数据库服务时,读取控制文件,从检查点对应的lsn开始,执行recovery,一直读取到到当前数据库最大timeline所对应的wal日志,完成数据的一致性恢复,启动实例。

从备库sys_log日志信息看,timeline(29)history文件记录的lsn满足不了数据库的recovery,备库timeline(29)对应的history文件是“0000001D.history”(1D(16)=29(10)),可以将此timeline对应的history文件改名或删除,再重启备库数据库服务连接集群主库。

三、备库recovery过程

1、查看备库checkpiont信息

[kingbase@node102 bin]$ ./sys_controldata -D /data/kingbase/r6ha/data/
sys_control version number: 1201
Catalog version number: 202112261
Database system identifier: 7080367334319169673
Database cluster state: in archive recovery
sys_control last modified: Wed 01 Mar 2023 11:30:13 AM CST
Latest checkpoint location: 6/7F019F30
Latest checkpoint's REDO location: 6/7F019F00 #recovery起始lsn
Latest checkpoint's REDO WAL file: 00000031000000060000007F

2、查看备库启动后sys_log日志

2023-03-01 11:30:13.814 CST,,,2220,,63fec6c4.8ac,3,,2023-03-01 11:30:12 CST,,0,LOG,00000,"entering standby mode",,,,,,,,,""
2023-03-01 11:30:13.814 CST,,,2220,,63fec6c4.8ac,4,,2023-03-01 11:30:12 CST,,0,DEBUG,00000,"backup time 2023-03-01 11:30:11 CST in file ""backup_label""",,,,,,,,,""
2023-03-01 11:30:13.815 CST,,,2220,,63fec6c4.8ac,5,,2023-03-01 11:30:12 CST,,0,DEBUG,00000,"checkpoint record is at 6/7F019F30",,,,,,,,,""
2023-03-01 11:30:13.815 CST,,,2220,,63fec6c4.8ac,6,,2023-03-01 11:30:12 CST,,0,DEBUG,00000,"redo record is at 6/7F019F00; shutdown false",,,,,,,,,""
2023-03-01 11:30:13.818 CST,,,2220,,63fec6c4.8ac,19,,2023-03-01 11:30:12 CST,1/0,0,LOG,00000,"redo starts at 6/7F019F00",,,,,,,,,""
......
2023-03-01 11:31:49.379 CST,,,2220,,63fec6c4.8ac,10240281,,2023-03-01 11:30:12 CST,1/0,0,LOG,00000,"consistent recovery state reached at 6/AB19B9F0",,,,,,,,,""

如下图所示:

3、查看恢复完成对应的wal日志

Tips:

recovery完成时的timeline是31(16进制)(timeline=49),对应的wai日志文件0000003100000006000000AB。

-rw------- 1 kingbase kingbase  16M Mar  1 11:30 0000003100000006000000A9
-rw------- 1 kingbase kingbase 16M Mar 1 11:30 0000003100000006000000AA
-rw------- 1 kingbase kingbase 16M Mar 1 11:36 0000003100000006000000AB
-rw------- 1 kingbase kingbase 2.1K Mar 1 11:30 00000031.history

查看timeline对应history文件:

[kingbase@node102 sys_wal]$ cat 00000031.history
1 0/690000A0 no recovery target specified
2 0/6A0000A0 no recovery target specified
3 1/C50089F0 no recovery target specified
......
47 6/790014E8 no recovery target specified
48 6/7A0000A0 no recovery target specified

查看当前timeline:

prod=# select timeline_id from sys_control_checkpoint();
timeline_id
-------------
49
(1 row)

---如上所示,备库在启动数据库服务后,读取控制文件获取到检查点对应lsn后,开始应用wal日志,直到应用到最新的timeline所对应的wal日志文件达到数据一致性后,停止恢复。

KingbaseES V8R6 集群运维案例--备库timeline not contain minimum recovery point故障的更多相关文章

  1. KingbaseES V8R6集群运维案例之---repmgr standby promote应用案例

    案例说明: 在容灾环境中,跨区域部署的异地备节点不会自主提升为主节点,在主节点发生故障或者人为需要切换时需要手动执行切换操作.若主节点已经失效,希望将异地备机提升为主节点. $bin/repmgr s ...

  2. KingbaseES V8R3集群运维案例之---主库系统down failover切换过程分析

    ​ 案例说明: KingbaseES V8R3集群failover时两个cluster都会触发,但只有一个cluster会调用脚本去执行真正的切换流程,另一个有对应的打印,但不会调用脚本,只是走相关的 ...

  3. KingbaseES V8R3集群运维案例之---kingbase_monitor.sh启动”two master“案例

    案例说明: KingbaseES V8R3集群,执行kingbase_monitor.sh启动集群,出现"two master"节点的故障,启动集群失败:通过手工sys_ctl启动 ...

  4. KingbaseES V8R3集群运维案例之---cluster.log ERROR: md5 authentication failed

    案例说明: 在KingbaseES V8R3集群的cluster.log日志中,经常会出现"ERROR: md5 authentication failed:DETAIL: password ...

  5. KingbaseES V8R3集群运维案例之---用户自定义表空间管理

    ​案例说明: KingbaseES 数据库支持用户自定义表空间的创建,并建议表空间的文件存储路径配置到数据库的data目录之外.本案例复现了,当用户自定义表空间存储路径配置到data下时,出现的故障问 ...

  6. kingbaseES V8R6集群备份恢复案例之---备库作为repo主机执行物理备份

    ​ 案例说明: 此案例是在KingbaseES V8R6集群环境下,当主库磁盘空间不足时,执行sys_rman备份,将集群的备库节点作为repo主机,执行备份,并将备份存储在备库的磁盘空间. 集群架构 ...

  7. KingbaseES V8R6集群外部备份案例

    案例说明: 本案例采用sys_backup.sh执行物理备份,备份使用如下逻辑架构:集群采用CentOS 7系统,repo采用kylin V10 Server. 一主一备+外部备份 此场景为主备双机常 ...

  8. KingbaseES V8R6集群管理运维案例之---repmgr standby switchover故障

    案例说明: 在KingbaseES V8R6集群备库执行"repmgr standby switchover"时,切换失败,并且在执行过程中,伴随着"repmr stan ...

  9. KingbaseES V8R6集群维护案例之---停用集群node_export进程

    案例说明: 在KingbaseES V8R6集群启动时,会启动node_exporter进程,此进程主要用于向kmonitor监控服务输出节点状态信息.在系统安全漏洞扫描中,提示出现以下安全漏洞: 对 ...

  10. KingbaseES V8R6集群维护之--修改数据库服务端口案例

    ​ 案例说明: 对于KingbaseES数据库单实例环境,只需要修改kingbase.conf文件的'port'参数即可,但是对于KingbaseES V8R6集群中涉及到多个配置文件的修改,并且在应 ...

随机推荐

  1. 使用spring boot jpa进行增删改查

    项目地址:https://gitee.com/indexman/spring_boot_in_action 编写实体类User package com.laoxu.springboot.entity; ...

  2. MySQL写入SQL整个执行流程

    innodb存储引擎中一条sql写入的详细流程     第0步:会先去看缓冲区有没有这条数据,如果有就不进行缓存,直接进入第三步.   第1步:会将要修改的那一行数据所在的一整页加载到缓冲池Buffe ...

  3. webrtc 渲染音频时遇到的问题

    有用户反馈连麦时,直播间会有电流声,后面排查发现是 webrtc 内部播放器渲染音频时,用户的播放设备不支持 48000hz 采样率(我们传输的音频采样率都是 48000hz),导致音频数据受损而出现 ...

  4. Windows如何快速修改hosts文件

    作为开发人员,修改hosts文件可能是一个经常会执行的操作(使用自定义域名映射),但是如果每次都需要在Windows资源管理中进入到目录:C:\Windows\System32\drivers\etc ...

  5. 硬件开发笔记(九): 硬件开发基本流程,制作一个USB转RS232的模块(八):创建asm1117-3.3V封装库并关联原理图元器件

    前言   有了原理图,可以设计硬件PCB,在设计PCB之间还有一个协同优先动作,就是映射封装,原理图库的元器件我们是自己设计的.为了更好的表述封装设计过程,本文描述了一个创建asm1117-3.3V封 ...

  6. 案例分享:Qt高频fpga采集数据压力位移速度加速度分析系统(通道配置、电压转换、采样频率、通道补偿、定时采集、距离采集,导出exce、自动XY轴、隐藏XY轴、隐藏显示通道,文件回放等等)

    需求   1.0-7通道压力采集,采集频率1~100Khz(1,10,20,30-1000Khz):  2.0-7通道压力,可设置补偿值,测量范围:  3.编码器0,1脉冲采集,计算位移,速度,加速度 ...

  7. Navicat 12连接mysql8.x报错2059 - authentication plugin 'caching_sha2_password' 解决办法

    // %表示远程连接允许所有ip,如果只是连接本地,将%改为localhost即可 ALTER USER 'root'@'%' IDENTIFIED BY '你自己的mysql的密码' PASSWOR ...

  8. Scyther 协议形式化验证翻译 (第二章)

    论文概述:$\alpha +\forall (\sum \oint_{3}^{4})$ 第二章:  操作语义 在第二章中我提出了一种新的安全协议的模型,用于定义安全协议以及协议的行为,在明确的模型中执 ...

  9. [转] VSCode中 Vetur插件排版Vue文件 Col 标签子标签不被缩进的问题 iview viewDesign 自动格式化

    [转] VSCode中 Vetur插件排版Vue文件 Col 标签子标签不被缩进的问题 iview viewDesign 自动格式化 问题 Col标签不对齐 首先直接放解决办法 在 vsCode se ...

  10. 创建 nest-websocket 服务 用于mock单点登录开发

    需求 有个单点登录的任务,但是都是现场的服务 api 和 websocket 都在现在 开发本机mock服务 本地搭建环境先模拟一下 资料 NestJS WebSocket 开始使用 https:// ...