mysql主从模式下在主库上的某些操作不记录日志的方法

需求场景:

在主库上的需要删除某个用户,而这个用户在从库上不存在(我在接手一个业务的时候,就遇到主从架构用户授权不一致的情况,主库比较全,而从库只创建了复制和只读账号)。

个人建议,在一个集群架构(姑且把主从复制也称为集群吧),端口、用户名、密码、权限都要保持一致,这样,在切换的时候,就不用考虑权限问题。否则切换了,但是因为权限问题,

导致连接报错,不值得自己给自己挖坑。

具体说明如下:

set sql_log_bin=0;的作用和目的:禁止将自己的语句记入二进制日志文件binlog中

当然也就不会更新到备库中;

记得操作完成后,别忘记了执行set sql_log_bin=1;

 具体示例如下:

-- 需要删除的用户
set sql_log_bin = 0;
drop user 'user1'@'10.20.1.253';
drop user 'user2'@'10.20.1.%';
drop user 'user3'@'10.20.1.%';
set sql_log_bin = 1; select concat('\'',user,'\'','@','\'',host,'\' ;') from mysql.user order by user;