在使用Windows系统远程连接linux下的MySQL数据库时,提示无法连接。解决方法如下:
第一、允许MySQL数据库被远程连接
编辑/etc/mysql/mysql.conf.d/mysqld.cnf 配置文件,注释bind-address = 127.0.0.1
这一行,然后重启MySQL服务。
vim /etc/mysql/mysql.conf.d/mysqld.cnf
注释掉以下一行,使用#号注释
# bind-address = 127.0.0.1
重启服务
service mysql restart
第二、授权允许远程连接的用户
以授权root用户为例
mysql> grant all privileges on *.* to root@"%" identified by "password" with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
命令解释
*.*
:第一个*
代表数据库名;第二个*
代表表名。这里的意思是所有数据库里的所有表都授权给用户;
root
:授予root账号;
%
:表示授权的用户IP,这里代表任意的IP地址都能访问MySQL;
password
:分配账号对应的密码;
flush privileges
:刷新权限信息。