下面是网上找到的比较靠谱的方法:

原文地址:http://www.linuxdiyf.com/linux/15206.html

以下所有操作在terminal(终端)中执行。


首先查看端口是否打开 netstat -an|grep 3306

此图为开启3306端口的截图,之前显示为. . . 127.0.0.1:3306 . . .


打开mysql配置文件vi /etc/mysql/mysql.conf.d/mysqld.cnf

将bind-address = 127.0.0.1注销​

截图最下面一行注销


重启动ubuntu

再次查看端口是否打开 netstat -an|grep 3306

此时端口3306已经打开

然后可以授权 进入mysql 使用sudo

命令:sudo mysql -u root -p

第一次输入本机密码,第二次为mysql密码


将root用户授权给所以连接: grant all privileges on *.* to 'root'@'%' identified by 'xxxxxx';

最后一个为mysql密码​

让权限立即生效:flush privileges;​


到此所以操作完成,可以在任何主机连接此mysql数据库服务器了。


MySQL远程连接不上的解决:http://www.linuxdiyf.com/linux/11488.html

Centos7.1防火墙开放端口:http://www.linuxdiyf.com/linux/14840.html

CentOS 7开放端口:http://www.linuxdiyf.com/linux/9410.html


但是我试了都不行,最后明白是因为我的云服务器只能用ssh方式进行认证(说多了都是泪,一开始都想到的,但是因为挂着代理,所以第一次这种方式没有登陆成功,浪费好多时间,走了一大圈弯路。。。),所以mysql用户名+密码方式一直连不上。

最终我的解决方案是:



Logo

更多推荐