DataBase - MySQL安全模式

人盡茶涼 提交于 2020-01-16 00:52:16

MySQL中sql_safe_updates安全模式

概念与场景

不论新手还是老手在使用mysql中一般都会有批量操作数据的需求,假设在安全模式关闭的情况下,我们update和delete没有加入where条件,那么我们就会失手将全部数据修改或删除(这个后果不亚于删库跑路了~),故为了防止这种情况,在使用数据库时通常都会加入安全模式

常见场景

在update操作中

  1. 当where条件中列(column)没有索引可用且无limit限制时会拒绝更新
  2. where条件为常量且无limit限制时会拒绝更新

在delete操作中

  1. where条件为常量
  2. where条件为空
  3. where条件中 列(column)没有索引可用且无limit限制时拒绝删除
安全模式Sql语句
  • 查看当前安全模式状态
show variables like'sql_safe_updates';

MySQL输出效果
在这里插入图片描述
Value : ON 开启
Value :OFF 关闭

  • 设置安全模式状态

打开安全模式状态

set sql_safe_updates=1;

关闭安全模式状态

set sql_safe_updates=0; 
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!