解决mysql中只能通过localhost访问不能通过ip访问的问题

解决mysql中只能通过localhost访问不能通过ip访问的问题

原因是没开权限

SELECT * FROM USER WHERE USER='root';

grant all privileges on *.* to 'root'@'%' identified by '123456';
flush privileges;


1. 命令行进入mysql(假设root用户的密码也为root)
mysql –uroot –proot

2. 使用mysql数据库
use mysql;

3. 赋予权限
grant all privileges on *.* to ’root’@’%’ identified by ’root’;
其中*.*的意思是 所有库.所有表, 'root'@'%' identified by 'root'的前一个root是用户名,%是指所有访问ip,后一个root是指密码
这当然是一个糙汉子的赋权限方法,一个安静的女子应该将她写得优美而具体,比如:
grant all privileges on mdb.mtbl to ’beautiful’@’10.38.62.233’ identified by ’woman’;

4. 刷新权限(在不重启的情况下生效)
flush privileges;
听说实际实现方式是将user和privilige表里的东西扔进内存。

5. 重启mysql服务

原文地址:https://www.cnblogs.com/But-you/p/12546198.html