如何进行mysql下的严格模式修改,使其可以用插入用户表的方式添加新用户
方法1 修改全局变量sql_mode
通过修改全局变量sql_mode来实现严格模式的修改,从而达到使用插入用户表的方式添加新用户。
首先进行插入用户表方式进行用户创建
从上面可以看出,此时是不允许进行插入用户表方式创建新用户的,这是因为mysql5.7的默认严格模式下是不可以使用insert语句来创建用户的。
解决方法:
将sql_mode修改为NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION。
查询当前的sql_mode
show variables like "sql_mode%";
修改sql_mode值
set global sql_mode = "NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";
再次进再次使用insert的方式创建用户
由此可见,该方法是不行的,修改全局变量方式实现insert语句插入失败。
方法2 修改mysql配置文件
在mysql的配置文件中修改mysql中的严格模式,从而实现insert语句创建用户。
在windows系统下,mysql的默认配置文件名为my.ini
在Linux系统下,mysql的默认配置文件名为my.conf/my.cnf
sql_mode = NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
如果有则修改,没有则在[mysqld]中添加。
添加完成后重启mysql服务,再次使用insert的方式创建用户。
添加用户成功
刷新权限表
退出mysql使用新创建的用户登录
登录成功