先说本质。在mysql数据库里面。有个表,叫user。里面存放的便是登录用户的信息。如果是命名行则可以通过 use mysql; show tables;2个命名语句显示出user表*(在最末尾)。
在user表里前2列有Host,User 2列。默认对应的是localhost,User。
在这里Host的值便是数据库访问权限。loaclhost指的是本机的意思。也就是只有本机可以访问该数据库。
查看cmd命名 select user,host from mysql.user;(如果已经是使用了use mysql.则直接from user);
说到这里,大家就应该知道了。数据库访问权限由在这个Host列决定。所以,接下来我们只需要把localhost换成我们想要的ip或者开发全部ip(% 等于数据库允许所以的ip链接)
修改方法,可视化直接修改。 CMD命名: update user set host = '%' where user = 'root'; (为了确保修改成功,可执行上面查看语句);
修改成功后,host = %,user =root。 到这儿就还差一个重要的权限赋予了;
执行(CMD与可视化均执行)这句话:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '这里面填你的mysql密码' WITH GRANT OPTION
这句的意思是。予任何主机访问数据的权限 。
至此权限开放成功。
最后一个步骤便是 让你的修改生效:
FLUSH PRIVILEGES ;
然后退出即可。
下面贴上步骤以及图解