更新时间:2022-08-05 GMT+08:00
MySQL源库设置了global binlog_format = ROW没有立即生效
使用DRS进行MySQL的迁移或同步时,必须确保源库的binlog_format是ROW格式的,否则就会导致任务失败甚至数据丢失。在源库设置了global级别的binlog_format=ROW之后,还需要中断之前所有的业务连接,因为设置之前的连接使用的还是非ROW格式的binlog写入。
安全设置global级binlog_format=ROW的步骤
- 通过MySQL官方客户端或者其它工具登录源数据库。
- 在源数据库上执行全局参数设置命令。
set global binlog_format = ROW;
- 在源数据库上执行如下命令确认上面操作已执行成功。
select @@global.binlog_format;
- 您可以通过如下两种方式确保修改后的源库binlog_format格式立即生效。
方法一:
- 选择一个非业务的时间段,中断当前数据库上的所有业务连接。
- 通过如下命令查询当前数据库上的所有业务连接(所有的binlog Dump连接及当前连接除外)。
show processlist;
- 中断上面查出的所有业务连接。
在上述操作未结束之前,请不要创建或者启动迁移任务,否则会导致数据不一致。
- 通过如下命令查询当前数据库上的所有业务连接(所有的binlog Dump连接及当前连接除外)。
- 为了避免源库binlog_format格式因为数据库重启失效,请在源库的启动配置文件(my.ini或my.cnf等)中添加或修改配置参数binlog_format并保存。
binlog_format=ROW
方法二:
- 为了避免源库binlog_format格式因为数据库重启失效,请在源库的启动配置文件(my.ini或my.cnf等)中添加或修改配置参数binlog_format并保存。
binlog_format=ROW
- 确保上述配置参数binlog_format添加或修改成功后,选择一个非业务时间段,重启源数据库即可。
- 选择一个非业务的时间段,中断当前数据库上的所有业务连接。
父主题: 通用操作
通用操作 所有常见问题
- DRS界面信息重叠是什么原因
- 目标库读写设置是实例级还是库级
- MySQL源库设置了global binlog_format = ROW没有立即生效
- binlog_row_image参数设置为FULL没有立即生效
- 设置的密码不符合目标库的密码复杂度要求时,如何修改密码强度
- 如何设置MongoDB数据库分片集群的分片键
- 扩大带宽是否会对DRS正在进行中的任务产生影响
- 为什么MariaDB和SysDB下的数据不迁移或同步
- 多对一的场景约束及操作建议
- 一对多的场景约束及操作建议
- 数据复制服务的操作日志在哪里查看
- 为什么DRS发送提示信息的语言和页面不符
- 为什么DRS任务自动结束了
- DRS导出任务列表
- 已结束的任务还能重新启动吗
- 重置任务和重新创建任务有什么区别
- DRS支持一键反向功能吗
- 已经创建的SMN主题为什么选择不了
- 任务创建成功后是否支持修改SMN主题
- DDM为源链路源库分片数量和信息怎么填写
- 源端MySQL发生主备倒换,DRS任务会丢数据吗
- DRS对象选择时的全部迁移、表级迁移、库级迁移有什么区别
- 源库或目标库修改密码后如何操作
- 设置SMN主题策略,允许DRS发送消息通知
- DRS任务表数量太多导致任务超时怎么办
- DRS任务创建后支持修改源或目标数据库吗
more