Centos7开启/关闭3306端口实现远程连接数据库

在阿里云ecs上搭建网站以及学习apache安装的时候需要打开80,3306端口等,由于centos 7版本以后默认使用firewalld后,网上关于iptables的设置方法已经不管用了!直接学习firewalld,通过配置实现阿里云Centos7.2版本3306端口实现远程连接数据库。

#开启3306端口
[caibo@localhost /]$ firewall-cmd –zone=public –add-port=3306/tcp –permanent
success
#reload一下
[caibo@localhost /]$ firewall-cmd –reload

systemctl stop firewalld.service #停止
systemctl disable firewalld.service #禁用

mysql安装后还要允许远程连接,其他服务器才能连接到本地的数据库。

mysql账户是否不允许远程连接。如果无法连接可以尝试以下方法:

mysql -u root -p //登录MySQL
mysql> GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’WITH GRANT OPTION; //任何远程主机都可以访问数据库
mysql> FLUSH PRIVILEGES; //需要输入次命令使修改生效
mysql> EXIT //退出

也可以通过修改表来实现远程:

mysql -u root -p

mysql> use mysql;
mysql> update user set host = ‘%’ where user = ‘root’;
mysql> select host, user from user;

Linux(centos)下如何关闭mysql的3306端口
SSH登录LINUX平台,在命令行输入:

# vi /etc/my.cnf

在[mysqld]下添加

skip-networking

重新MYSQL:

# service mysqld stop

# service mysqld start

即可关闭3306端口

本地程序可以通过mysql.sock来连接,不影响使用,既提高了访问速度,又提高了安全性,避免远程连接mysql数据库

Leave a Comment