10bet网址
MySQL Enterprise Backup 8.0用户指南
相关的文档10bet官方网站 下载本手册
PDF(美国Ltr)- 1.4 mb
PDF (A4)- 1.4 mb
HTML下载(TGZ)- 207.0 kb
HTML下载(Zip)- 243.8 kb


8.3恢复源数据库

要修复复制源数据库中的损坏问题,可以恢复备份,注意不要将不必要的SQL操作传播到复制服务器:

  1. 关闭源数据库,然后使用copy-back-and-apply-log命令,以恢复它的备份并准备数据。

  2. 编辑源代码的my.cnf存档并注释掉log-bin,以便副本不会收到恢复源所需的两倍二进制日志。

  3. 在将二进制日志传输到源时,副本中的复制必须暂时停止。在副本中,做:

    mysql STOP SLAVE;
  4. 启动源代码mysqld在恢复的备份上:

    InnoDB: Last MySQL binlog file position 0 5585832,文件名./omnibook-bin. / mysqld:正在恢复:scanning up to log sequence number 0 64300044000002年……

    InnoDB打印二进制日志文件(。/ omnibook-bin.000002在本例中)和位置(5585832在这种情况下)它能够恢复到。

  5. 通过管道将剩余的二进制日志文件传输到恢复的服务器。剩余二进制日志文件的数量取决于从上次备份到将数据库更新到最新的时间间隔的长度。时间跨度越长,剩余的二进制日志文件可能就越多。成功恢复需要所有二进制日志文件(包含该时间跨度中所有连续的二进制日志位置)。

    您还需要提供二进制日志中的起始位置,事件的管道应该从该位置开始。从元/ backup_variables.txt您刚刚在上面的第1步中恢复的备份中的文件(访问backup_variables.txt例如,通过转到您指定的临时备份目录——backup-dir在恢复过程中,找到文件文件夹):查找条目binlog_position =价值元/ backup_variables.txt,及供应价值mysqlbinlog——起始位置选择。

    请注意

    虽然恢复后的最后一个二进制日志位置也会被InnoDB显示出来(参见上面的步骤4),但这并不是一个可靠的数字来推断起始位置mysqlbinlog因为在显示位置所反映的时间之后,可能发生了DDL事件和非innodb更改。

    例如,如果还有两个二进制日志文件,omnibook-bin.000003而且omnibook-bin.000004之后就会出现omnibook-bin.000002上面第4步中的恢复结束于5585834根据backup_variables.txt文件,通过一个连接将二进制日志管道到服务器,使用以下命令:

    $ mysqlbinlog——start-position=5585834 /mysqldatadir/omnibook-bin。000002 \ /mysqldatadir/omnibook-bin. 000002 \ /mysqldatadir/omnibook-bin。000003 / mysqldatadir / omnibook-bin。000004 | mysql

    看到时间点(增量)恢复更多使用说明mysqlbinlog

  6. 源数据库现在已经恢复。关闭源代码并进行编辑my.cnf要取消log-bin

  7. 再次启动源代码。

  8. 重新在副本中启动复制:

    mysql>启动SLAVE;