Linux开放端口,开启mysql远程访问

1.保证远程机与本地可以互相访问,本地将防火墙关闭,两者互ping IP,ping通说明二者网络互通完成第一步。(Linux查看ip命令:ifconfig;window查看IP命令ipconfig)

2.查看端口号3306是不是被防火墙挡住了,telnet  IP 端口号;

下图这样就是防火墙挡住了3306端口不允许访问

接下来需要配置防火墙,若是刚装的Linux系统,然后做防火墙配置的时候找不到iptables文件,因为默认使用的是firewall作为防火墙,把他停掉装个iptable,若是可以找到对应的iptables文件,则可以跳过下面安装防火墙的步骤。

iptable防火墙安装步骤如下:

1).停掉firewall防火墙

systemctl stop firewalld 

systemctl mask firewalld

2)安装iptables 防火墙

yum install -y iptables 

yum install iptables-services

防火墙安装完毕,然后开启对外访问的端口配置步骤如下:

1)进入配置文件

vim /etc/sysconfig/iptables

2)添加开发端口号(这里以mysql的默认端口为例)

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

3)重启防火墙使配置生效 

systemctl restart iptables.service

3.再次连接 telnet  IP 端口号,还是连接失败,这里的原因是因为你的数据库只允许root用户在本地登录,你可以设置允许访问的用户和地址

修改主机限制,让mysql可以远程访问,步骤如下:

1)修改权限

grant all privileges on *.* to 'root'@'%' identified by 'password';

2)刷新缓存(一定要执行这个步骤) flush privileges;

3)重启MySQL

service mysql restart

再次连接 telnet  IP 端口号

Linux开放端口,开启mysql远程访问_第1张图片

表示已经连接成功,这样就可以本地通过客户端访问远程机的数据库了

你可能感兴趣的:(Linux)