设置mysql登录用户的主机host
mysql -u root -p
#登录数据库
mysql>use mysql;
#进入数据库mysql
mysql>update user set host = '%' where user = 'root';
#更新数据库
mysql>select host, user from user;
#查看更改效果
mysql>flush privileges;
#使更改生效
修改前的用户表:
修改后的用户表:
更新数据库表内容报错Error Code: 1175.
Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode
MySql运行在safe-updates模式下,该模式会导致非主键条件下无法执行update或者delete命令,修改数据库模式执行命令SET SQL_SAFE_UPDATES = 0;
flush privileges的使用
flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。