ubuntu mysql 远程连接问题解决方法

今天在配置opennebula 3.8的时候,当执行one start启动时,报不能连接数据库的错误,但是在shell下输入mysql -uroot -p是可以登录的,所以问题应该是mysql不允许root用户远程登录的问题,于是通过输入下面命令:


  1. GRANT ALL PRIVILEGES ON*.*TOroot@"%"IDENTIFIED BY'password'WITH GRANT OPTION;
重启mysql后,发现还是连不上,于是想到是不是防火墙(ufw)或是iptables禁用了3306端口。通过service iptables stop和ufw status,查看发现并不是防火墙或iptables的问题,而且通过netstat可以看到3306端口处于监听状态。

排除了以上因素之后,又google了下,发现问题出现mysql的配置文件my.cnf中,通过如下修改,重启mysql后,成功远程登录,opennebula成功连上mysql数据库。

  1. sudo vim/etc/mysql/my.cnf
  2. //找到如下内容,并注释
  3. bind-address=127.0.0.1
注释掉 bind - address = 127 . 0 . 0 . 1 后重启mysql即可!如果不注释掉,通过netstat可以查看到, 306端口只是在IP 127.0.0.1上监听,所以拒绝了其他IP的访问。

你可能感兴趣的:(ubuntu)