sql_safe_updates默认值OFF,在某些操作场景下有安全隐患。
在mysql客户端连接数据库时,指定--safe-updates选项,可以限定当前连接在更新数据表时必须有limit或者where key索引限制。这个是会话级的。
mysql --safe-updates -hxxx -uyyy -p -D
连接mysql以后,对所有会话生效,命令行中设置:
set global sql_safe_updates=1;
或者设置当前会话的:
set sql_safe_updates=1;
如果mysqld下次重启以后仍然生效,需要新建一个文件init_file.sql:
set global sql_safe_updates=1;
/etc/my.cnf中添加配置:
[mysqld]
init_file='/etc/init_file.sql'