Mysql 数据库 远程连接

如果想远程连接数据库

出现了错误,,,

防火墙开放端口,,, CentOS 7.0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下

1、直接关闭防火墙
systemctl stop firewalld.service           #停止firewall
systemctl disable firewalld.service     #禁止firewall开机启动

2、设置 iptables service
yum -y install iptables-services
如果要修改防火墙配置,如增加防火墙端口3306
vi /etc/sysconfig/iptables 
增加规则
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

保存退出后
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动

一是防火墙问题,,,https://www.cnblogs.com/lightsrs/p/7842299.html

1.# grep "password" /var/log/mysqld.log

2.# mysql -uroot -p

3.grant all privileges on *.* to 'root'@'%' identified by '你的数据库密码';

4.flush privileges;

5.exit;

shell > netstat -apn 查看所有端口信息,如下图可以看出mysqld服务Listen端口号为3306,当然也可以在MySQL中 mysql > show variables like 'port';

 netstat -apn | grep 3306

find / -name my.cnf

vim /etc/my.cnf

CentOS7的默认防火墙为firewall,且默认是不打开的。

 systemctl start firewalld 启动friewall

systemctl status firewalld 查看firewall启动情况

firewall-cmd --zone=public --add-port=3306/tcp --permanent 开启3306端口

然后重启 firewalld  #firewall-cmd --reload

使用 # firewall-cmd --query-port=3306/tcp 检查3306端口是否已经开启,如果显示yes,则表示防火墙已开启该端口。

检验是否成功设置   进入数据库,,写完后exit退出

二是阿里云本身是否开启了3306端口问题https://jingyan.baidu.com/article/03b2f78c31bdea5ea237ae88.html

登陆阿里云,进入控制台,点击云服务器ECS,进入服务器控制台,点击要选择的服务器,进入服务器实例列表,找到想要增加端口的实例,点击后面的更多,点击更多后列表中找到安全组配置,并点击配置规则,跳转到的页面如图所示,其中圈出来的部分就是已经开放的端口,如果想添加新的端口就点击添加安全组规则,在弹出窗口中输入内容,比如添加3306端口,如图所示,(必须以3306/3306的形式),点击确定后看看自己的安全组规则中是否多了一个22的端口呢,如果有那恭喜你已经开通成功啦

 

猜你喜欢

转载自www.cnblogs.com/dennyxiao/p/8990047.html