1️⃣ sql_log_bin 的作用
- 用于控制 当前连接(会话)执行的写操作 是否记录到 二进制日志(binlog);
- 影响的是 SESSION 级别 的 DML(INSERT/UPDATE/DELETE)记录。
2️⃣ 级别说明
| 级别 | 能否配置 | 说明 | 
| SESSION | ✅ 可以通过  | 只对当前连接有效 | 
| GLOBAL | ❌ 官方 MySQL 不允许 | 尝试  | 
| 
 | 
3️⃣ 权限要求
- 修改 SESSION 级别的 sql_log_bin需要 SUPER 或 SESSION_ADMIN 权限;
- 没有权限会报:
ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER, SESSION_ADMIN privilege(s) for this operation4️⃣ 实际使用场景
- 临时禁止 DML 写入 binlog(单个连接):
SET sql_log_bin = 0;
DELETE FROM t1 WHERE id=4;
SET sql_log_bin = 1;- 多连接控制:
- 每个连接需要分别设置 sql_log_bin=0;
- 没有全局开关来对所有连接同时生效。
5️⃣ 结论
- 不支持全局配置,只能在 当前会话(SESSION) 控制;
- 全局禁止 binlog 只能通过 binlog_format=OFF(关闭 binlog),但这会影响所有主从复制和恢复,通常不推荐。
                
 
 
                     
            
        













 
                    

 
                 
                    