本文介绍如何使得本地的mysql能够被远程连接。
mysql跟用户相关的表在 mysql.user表中,这个表关注用户的所有信息,而其中的HOST字段即为本文所要讲解的字段。
host表中存放的是同一列中用户可以被哪些IP 机器可以访问,'%'表示为任意IP都快访问,'192.168.0.1'这些IP地址类似的表示某一具体的客户端访问。
我们可以按照下面的步骤修改:
- 登录 Mysql-Server 连接本地 mysql (默认只允许本地连接);
-
修改 Mysql-Server 用户配置
mysql> USE mysql; -- 切换到 mysql DB Database changed mysql> SELECT User, Password, Host FROM user; -- 查看现有用户,密码及允许连接的主机 +------+----------+-----------+ | User | Password | Host | +------+----------+-----------+ | root | | localhost | +------+----------+-----------+ 1 row in set (0.00 sec)
-
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.100' IDENTIFIED BY '123456' WITH GRANT OPTION;(@后面填IP地址,TO后面为用户名,IDENTIFIED BY后面为用户密码)
-
mysql> flush privileges;
这样就允许远程访问,但是楼主在测试的过程中发现仍然不能远程访问,后来查找发现,原来是楼主的防火墙开启了,所以大家在测试的时候记得关掉自己的防火墙。