在启动MySQL之间的增量数据迁移任务时,DTS将在预检查阶段对源数据库进行binlog检查。本文将介绍源库binlog检查涉及的检查项及修复方法。
源库binlog是否开启检查
该检查项主要检查源数据库是否开启binlog功能。如果检查失败,请参考下述方法修复。
修复方法:
- 登录自建MySQL数据库服务器。
- 使用
vim
命令修改配置文件my.cnf
中的如下参数。log_bin=mysql_bin binlog_format=row server_id=大于 1 的整数 binlog_row_image=full //当自建MySQL的版本大于5.6时,需设置该项。
- 重启MySQL进程。
$mysql_dir/bin/mysqladmin -u root -p shutdown $mysql_dir/bin/safe_mysqld &
说明 将mysql_dir
替换为您MySQL实际的安装目录。 - 登录数据传输控制台,重新执行预检查。
源库binlog模式检查
该检查项主要检查源数据库的binlog模式是否为ROW
。如果检查失败,请参考下述方法修复。
修复方法:
- 连接自建MySQL数据库。
- 在数据库命令窗口执行下述语句将binlog模式设置为
ROW
。set global binlog_format='ROW';
- 重启MySQL进程。
$mysql_dir/bin/mysqladmin -u root -p shutdown $mysql_dir/bin/safe_mysqld &
说明 将mysql_dir
替换为您MySQL实际的安装目录。 - 登录数据传输控制台,重新执行预检查。
源库binlog存在性检查
该检查项主要检查源数据库的binlog文件是否被删除。如果检查失败,说明源数据库的binlog文件不完整,请参考下述方法修复。
修复方法:
- 在预检查对话框中,单击源库binlog存在性检查栏目后的
。
- 在弹出的查看详情对话框中,查看失败原因中提示缺少的binlog文件,本案例缺少的binlog文件为mysql_bin.000003。
- 连接自建MySQL数据库。
- 在数据库命令窗口执行下述语句,清除指定的binlog文件之前的所有binlog文件。
说明 本案例中缺失的binlog文件为mysql_bin.000003,指定的日志文件为该文件之后的第一个文件,即填入的binlog_filename为mysql_bin.000004
。PURGE BINARY LOGS TO '<binlog_filename>';
示例:
PURGE BINARY LOGS TO 'mysql_bin.000004';
- 登录数据传输控制台,重新执行预检查。
Mysql源库binlog_row_image是否为FULL
该检查项主要检查源数据库的binlog_row_image
是否为full
。如果检查失败,说明源数据库的binlog未记录全镜像,请参考下述方法修复。
修复方法:
- 连接自建MySQL数据库。
- 在数据库命令窗口执行下述语句,将
binlog_row_image
设置为full
。set global binlog_row_image=FULL;
- 登录数据传输控制台,重新执行预检查。
原创文章,作者:网友投稿,如若转载,请注明出处:https://www.cloudads.cn/archives/33673.html