从Insight自动恢复时报错:backup binlog file failed
原因:
(1)执行binlog备份时连不上DN;
(2)执行binlog备份的DBagent上,etc/dbagent_info/binlogbackup.info中记录的binlog file 不在该DBAgent的DN的binlog index文件中。
解决:
如果是第一种原因,则需要检查DN状态,使DN处于正常可用状态;
如果是第二种原因,可将etc/dbagent_info/binlogbackup.info文件删除,然后再重新执行恢复操作。
手动恢复DN时报错:to_lsn and from_lsn in xtrabackup_checkpoints files are not equal
原因:
命令行中指定的全量备份文件与增量备份文件不相符,即所用的增量备份不是基于所用的全量备份的。
解决:
在命令行中指定正确的全量备份文件与增量备份文件。
自动恢复时报错:Active_TX_info file not found
原因:
在CM共享目录的Active_TX_Archive目录下没有找到小于等于恢复时间点的活跃gtid列表备份文件。
解决:
1.按3.1.1正确配置好CM的共享目录挂载。例如,clustermanager.ini中backup_root_directory配置的是/home/manager/backup_root,将/home/manager/backup_root挂载到/opt/backup/目录中。
2.执行restore.py命令时,为参数“--cmdata”指定/opt/backup。
自动恢复时报错:Active_TX_info record lost: time between [xxx] and [xxx]
原因:
在CM共享目录的Active_TX_Archive目录下找到的Active_TX_info文件中,找到距离用户指定时间点最近且小于用户指定时间点的活跃gtid记录的采集时间点与用户指定时间之间的时间差大于1分钟了。
解决:
调整指定恢复到的时间点,确保在小于这个时间点的1分钟时间范围内能找到从CM中找到采集活跃gtid的记录。
自动恢复时报错:start binlog(xxx) not exists in xxx
原因:
备份文件中最终数据对应的binlog 文件在binlog目录中找不到。
解决:
在binlog备份目录中不能有缺失的binlog文件。
集群恢复时报错:restore time (xxx),which is too close to last backup time.
原因:
使用当前时间5分钟(默认)内的实时备份文件进行恢复到任意时刻,恢复时间后的最近一次sequence备份数据未找到,此时该sequence备份可能还未生成,需要等待sequence定时备份(默认5分钟)后,再进行恢复。
解决:
等待5分钟(默认)后,即可恢复到任意时刻。
典型备份恢复实例
测试环境配置
测试环境硬件配置以及说明参见下表。
| 硬件名称 | 规格型号 | 数量 | 备注 |
|---|---|---|---|
管理节点 | 双CPU,8核 192 G内存 600 G×4以上SAS硬盘 480 G×1的SSD硬盘 | 3 | Redhat6.5操作系统安装Insight、MDS、PM、CM、GTM等管理节点 |
存储节点 | 双CPU,8核 192 G内存 600 G×4以上SAS硬盘 480 G×1的SSD硬盘 | 4 | 安装DN存储节点 2个group的集群,group为1主1备 |
计算节点 | 双CPU,8核 192 G内存 600 G×4以上SAS硬盘 480 G×1的SSD硬盘 | 1 | 安装CN计算节点 |
万兆交换机 | 普通PC | 1 | - |
测试目的
测试大数据量库表的备份恢复耗时情况。
测试方法
1.创建2个group节点集群。
2.sqltest预置数据,先预置全量备份数据,使数据库文件总大小达到192 G左右。
3.全量备份后,再预置增量备份数据,增量备份数据为30 G左右。
4.测试记录该库的全量备份、恢复时间。
测试数据及步骤
1.通过性能测试工具sqltest向集群预置数据,每个节点预置96 G左右数据量。
2.执行全量备份操作,数据量为192 G(2个节点数据总量),记录备份所用的时间t_b1。
3.再通过sqltest预置增量数据,每个节点数据增量为15 G左右,然后执行增量备份操作,记录备份所用的时间t_b2。
4.在g1节点的备机上执行恢复操作,恢复到全量备份结束后的一个时刻,记录获取数据所用的时间t_g1,记录prepare+copyback所用的时间t_p1。
5.在g2节点的备机上执行恢复操作,恢复到增量备份结束后的一个时刻,记录获取数据所用的时间t_g2, 记录prepare+copyback所用的时间t_p2。




