1:设置mysql的配置文件

/etc/mysql/my.cnf

找到 bind-address =127.0.0.1 将其注释掉;//浸染是使得不再只许可本地访问;

php外网访问如何设置能力许可外网拜访MySQL GraphQL

重启mysql:/etc/init.d/mysql restart;

2:登录mysql数据库:mysql -u root -p

mysql> use mysql;

查询host值:

mysql> select user,host from user;

如果没有\"大众%\公众这个host值,就实行下面这两句:

mysql> update user set host='%' where user='root';

mysql> flush privileges;

或者也可以实行:

mysql>grand all privileges on . to root@'%' identifies by ' xxxx';

个中 第一个表示数据库名;第二个表示该数据库的表名;如果像上面那样 .的话表示所有到数据库下到所有表都许可访问;

‘%':表示许可访问到mysql的ip地址;当然你也可以配置为详细到ip名称;%表示所有ip均可以访问;

后面到‘xxxx'为root 用户的password;

举例:

任意主机以用户root和密码mypwd连接到mysql做事器

mysql> GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;

mysql> flush privileges;

IP为192.168.1.102的主机以用户myuser和密码mypwd连接到mysql做事器

mysql> GRANT ALL PRIVILEGES ON . TO 'myuser'@'192.168.1.102' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;

mysql> flush privileges;