每次涉及到远程连接MySQL都会出现各种无法连接问题,一度成为了我的梦魇,随着对知识的逐步深入,诸如没有开放远程连接权限、IP匹配%的问题都已经不是问题了,再到后来了解了3306端口开放的问题,至此很多问题都能够自主排查解决。
自从接触了linux之后,远程访问linux下的MySQL一度又重新成为了我挥之不去的阴影,除了关闭防火墙外,总是有个叫做SELinux的鬼东西一致在搞我,平时通过setenforce 0指令将其临时关闭,当系统重启后忘记了SELinux的存在,导致折腾半天也找不到MySQL无法连接的原因。
查看selinux
[root@dev-server ~]# getenforce
Disabled
[root@dev-server ~]# /usr/sbin/sestatus -v
SELinux status: disabled
##设置SELinux 成为permissive模式
##setenforce 1 设置SELinux 成为enforcing模式
setenforce 0
vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
设置后需要重启才能生效
详细参考此博文。