阿里云ECS服务器Ubuntu配置MySQL远程访问
root账户登录服务器Ubuntu16.04
apt-get update
apt-get install mysql-server mysql-client;
安装时会让你设置root密码,输入2次。
本地连接mysql测试:
mysql -uroot -p****(****是安装时你设置的root密码)
远程连接:
mysql默认是只允许本地主机访问127.0.0.1,并关闭了远程连接,所以安装之后打开远程连接,并修改配置允许其他ip访问。
第一步:
vim /etc/mysql/mysql.conf.d/mysqld.cnf
。发现bind-address = 127.0.0.1
。把它注释掉
这里我们注释掉这一行,然后按esc :wq保存退出(vim基本命令)然后重启mysql就好了
/etc/init.d/mysql restart
或者 service mysql restart
第二步:
mysql -uroot -p;
show databases;
use mysql;
update user set host='%' where user='root' and host='localhost'; #将host设置为%表示任何ip都能连接mysql,当然您也可以将host指定为某个ip
flush privileges; #刷新权限表,使配置生效
第三步:
也是最重要的一步,阿里云的服务器设置了安全组规则来限制ecs服务器的ip,端口访问策略。因此需要修改。
登录阿里云=>控制台=>云服务器ECS=>网络和安全=>安全组
在入方向,点击配置规则可以看到下图,3306端口是访问服务器mysql的,没有的话就添加规则,端口范围选择 3306mysql,授权对象设置为0.0.0.0/0 允许所有ip访问。80端口是访问web的,22端口是远程连接服务器的。
设置完成之后,可以用navicat远程链接服务器的mysql测试。成功。