mysql 数据库默认安装完毕后是没有开启远程连接的。(网上相关资料很多,下面介绍一个笔者试过可以成功的)
首先进行下面的操作检查是否开启了mysql远程连接。
1 、 登陆mysql
mysql -u root -p;
输入密码:
2、查看user表:
mysql> use mysql;
Database changed
mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host | user | password |
+--------------+------+-------------------------------------------+
| localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
+--------------+------+-------------------------------------------+
2 rows in set (0.00 sec)
3、实现远程连接(授权法)
将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。
update user set host = ’%’ where user = ’root’;
将权限改为ALL PRIVILEGES
mysql> use mysql;
Database changed
mysql>grant all privileges on *.* to 'root'@'%' identified by "root";
Query OK, 0 rows affected (0.00 sec)
mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host | user | password |
+--------------+------+-------------------------------------------+
| localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| % | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
+--------------+------+-------------------------------------------+
3 rows in set (0.00 sec)
4刷新配置
mysql> FLUSH PRIVILEGES ;
一般经过上面的步骤,便可实现远程连接了,如果还不行,有可能是防火墙的问题,关闭防火墙,测试是否可以远程连接。可以,查看mysql开启防火墙远程访问的相关知识。
希望上文有所帮助。