mysql默认情况下是只运行本地(localhost)登录管理的,在外地或另外一台电脑就无法登录。
此教程仅限于mysql8,低于当前版本暂时不清楚是否有效
我这里使用mysql自带的workbench管理工具来操作
1、关闭workbench安全模式
打开首选项
取消勾选
注意要重启软件!!
如果没有修改成功,会导致下列错误!
在第五步修改表的时候会报:
(原文)update user set Host = '%' where user = 'root' 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, toggle the option in Preferences -> SQL Editor and
(翻译)reconnectupdate user set Host = '%' where user = 'root'您正在使用安全更新模式,并且您试图更新一个没有使用KEY列的WHERE的表。若要禁用安全模式,请切换首选项-> SQL编辑器中的选项并重新连接
这说明你的安全模式没有正常关闭
2、连接数据库
在本地计算机登录mysql服务器,进入命令行
3、进入mysql库
use mysql;
4、查看user表
这里建议使用mysql管理工具。如mysql自带的workbench
select * from user;
这里可以看到root用户的Host是localhost,这就意味着只能在本机进行登录管理。我们只需要把localhost改为%即可。
5、修改表数据
我们将root用的的Host改为%
update user set Host = '%' where user = 'root';
这时我们在来看user表:
select * from user;
可以看出,root列的host值已经改为%
6、重启mysql
用管理员启动命令提示符
停止:net stop mysql
启动:net start mysql
如果提升没有权限,则说明你没有用管理员方式启动命令提示符