mysql 不能远程连接,还有其他什么需要设置么?

2018-01-02 00:05:23 +08:00
 MrMike
环境是 centos 7, mysql 5.6
已经设置了的:
1, my.cnf 中 bing-address: 0.0.0.0
2, grant all privileges on *.* to 'user'@'%' identified by 'password' with grant option; flush privileges;
3, 3306 端口已经开放了的。
已经重启 mysql 和服务器很多遍,但是依旧还是不能远程访问,请问还有什么可能性造成的呢?
3817 次点击
所在节点    MySQL
21 条回复
zjp
2018-01-02 00:15:52 +08:00
服务器上执行 `netstat -ntlp` 检查 MySQL 有没有监听 0.0.0.0:3306
自己电脑上执行 `telnet $IP 3306`检查能不能连上端口
另外就是看 MySQL 日志了
zjp
2018-01-02 00:19:38 +08:00
@zjp 看了楼主记录,MySQL 应该是监听端口了。连不上还有可能是 iptables 或者服务商的安全组的原因。CentOS 应该没有默认安装 ufw …
shiji
2018-01-02 00:30:19 +08:00
楼上言之有理。另外如果是 vps 的话,某些云服务商还在控制台里有安全组,相当于另外一层防火墙
WordTian
2018-01-02 00:37:54 +08:00
防火墙 selinux
patx
2018-01-02 00:57:17 +08:00
关闭防火墙,禁用 selinux
MrMike
2018-01-02 06:42:59 +08:00
@patx
@WordTian selinux 已经是禁用了的。
MrMike
2018-01-02 06:43:32 +08:00
@zjp

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1893/httpd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1431/sshd
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2435/mysqld

有监听的。
MrMike
2018-01-02 06:45:14 +08:00
@zjp 服务器是阿里云的,这个没考虑到,稍后可以联系阿里云试试。
squid157
2018-01-02 06:45:41 +08:00
看服务商是不是有额外的安全组设置,aws 阿里云 都是默认有的
defunct9
2018-01-02 06:55:42 +08:00
开 ssh 上去看看
rogwan
2018-01-02 07:20:38 +08:00
如果安全组没有放行,肯定是访问不了的
vimutt
2018-01-02 08:21:32 +08:00
bing-address 这个是 bind-address,你是笔误还是填错了
yingfengi
2018-01-02 08:23:45 +08:00
检查服务器上的防火墙和前端防火墙
opengps
2018-01-02 08:31:01 +08:00
综合 2 楼+3 楼,1,防火墙,2,安全组
重点看看你的服务器是否安全组设置,如果是阿里云等云服务器用户,往往是不懂安全组导致的,可以近似的把安全组理解成硬件防火墙那样,不能从服务器内部去设置改变,从而安全
AsisA
2018-01-02 08:59:07 +08:00
同楼上,可能被阿里云给拦截了,去阿里云控制台里看一下指定 ECS 的 3306 有没有开
rainmakeroly
2018-01-02 09:06:46 +08:00
登录阿里云后台后,安全组 添加策略,将 3306 添加进去就行了
hardman
2018-01-02 09:08:50 +08:00
防火墙,安全组
MrVito
2018-01-02 09:10:15 +08:00
用 xshell 或者类似的软件打隧道可以解决
hzwjz
2018-01-02 09:18:55 +08:00
TCP through ssh 进行连接,可行?
spkinger
2018-01-02 09:19:12 +08:00
很多 mysql 连接软件都支持先 ssh 隧道再 mysql 连接,
linux 也可以将远端 3306 端口隧道到本地(此处映射到本地 3333 端口,mysql 可以直接连接 127.0.0.1:3333 )
ssh -4 -fCNL 3333:127.0.0.1:3306 ssh 用户名 @主机 IP -o TCPKeepAlive=yes -o ServerAliveInterval=60 -o ServerAliveCountMax=3

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/419240

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX