背景
mysql 5.7.44
搭建主从的时候, 主库导出数据, 从库导入, 执行change master后, start slave 发现报错
分析
报错是执行alter
语句有问题.
人工跑这个语句也是相同的报错, 说明不是主从的问题. 就是执行这个SQL的问题. 但是这个SQL语句本身是没得问题.(主库都执行成功了的). 查看mysql.user
表也存在这个用户. 当前是root@localhost
, 所以权限也是有的. 当前数据库是5.7.44, 最新版
玄学问题??
其实这是操作不当造成的, 也就是使用 update/insert
等DML 修改用户信息导致的. 有类似BUG: https://bugs.mysql.com/bug.php?id=97693
解决
使用 FLUSH PRIVILEGES;
刷新权限即可.
这个问题其实不太容易遇到, 因为我们搭建主从的时候, 基本上不存在修改密码问题.