10bet网址
MySQL 8.0参考手册
相关文件10bet官方网站 下载本手册 本手册摘录

23.6.9.2使用NDB群集复制的时间点恢复

时间点恢复(即恢复自给定时间点以来所做的数据更改)是在恢复完整备份(将服务器恢复到备份时的状态)之后执行的。使用NDB Cluster和NDB Cluster Replication执行NDB Cluster表的时间点恢复可以使用本机完成NDB.数据备份(通过发出拍摄创建备份ndb_mgm客户)并恢复ndb_binlog_index.表(来自使用的垃圾箱mysqldump.)。

要执行NDB集群的时间点恢复,有必要按照以下步骤操作:

  1. 备份NDB.集群中的数据库,使用开始备份命令的ndb_mgm客户(参见第23.5.8节“NDB集群的在线备份”)。

  2. 在一些稍后的点,在恢复群集之前,请备份mysql.ndb_binlog_index.表格它可能是最容易使用的mysqldump.为此任务。此时还备份了二进制日志文件。

    此备份应定期更新 - 甚至每小时 - 根据您的需求。

  3. 灾难性的失败或错误发生。)

  4. 找到最后一个已知的良好备份。

  5. 清除数据节点文件系统(使用NDBD.——初始或者ndbmtd——初始)。

    笔记

    从NDB 8.0.21开始,磁盘数据表空间和日志文件被删除——初始.以前,需要手动删除这些文件。

  6. 下拉表或者截断表与之mysql.ndb_binlog_index.表格

  7. 执行ndb_restore.,恢复所有数据。您必须包含- restore-epoch选项,当你运行ndb_restore., 所以这样ndb_apply_status.表格正确地填充。(看第23.4.23节“ndb_restore - 恢复NDB群集备份”, 想要查询更多的信息。)

  8. 恢复ndb_binlog_index.表来自输出mysqldump.如有必要,请从备份恢复二进制日志文件。

  9. 找出最近应用的时代——也就是最大值时代的列值。ndb_apply_status.表 - 作为用户变量@latest_poch(强调):

    选择@latest_poch:=来自mysql.ndb_apply_status的max(epoch);
  10. 查找最新的二进制日志文件(@first_file.)和位置(位置该文件中的列值)对应于的此文件中@latest_pochndb_binlog_index.桌子:

    选择位置,@first_file.:=来自mysql.ndb_binlog_index的文件,其中epoch>@latest_pochORDER BY epoch ASC LIMIT 1;
  11. 使用mysqlbinlog.,重放从给定文件和位置直到故障点的二进制日志事件。(看第4.6.9节“mysqlbinlog - 处理二进制日志文件的实用程序”。)

也可以看看第7.5节,“时间点(增量)恢复”,有关二进制日志,复制和增量恢复的更多信息。