在一台mysql服务器(ip:192.168.8.5)上远程连接另一台mysql服务器(ip:192.168.8.4),使用mysql自带的连接工具,mysql进行连接;

首先要在被连接的mysql服务器上赋予用户root以权限,允许其进行远程连接,在192.168.8.4上使用:

grant all privileges on *.* to 'root'@'%' indetified by '123456';

flush privileges;

上面的命令就是给root用户赋予了,可以在任何主机连接本服务器的权限,flush privileges的作用是将权限表重新载入内存,使其生效;

此时在192.168.8.5使用:

mysql -h 192.168.8.4 -uroot -p123456

连接mysql数据库是报错如下图:

远程连接mysql5.5报错:ERROR 1042 (HY000): Can't get hostname for your address_数据库

上面这个错误,解决的方法如下

打卡192.168.8.4的mysql配置文件,一般是/etc/my.cnf在

[mysqld]节点下新增或修改如下两行行
skip-name-resolve #忽略主机名的方式访问
重启mysql,如下图,连接成功.

远程连接mysql5.5报错:ERROR 1042 (HY000): Can't get hostname for your address_error1042_02