Home >Database >Mysql Tutorial >CentOS下php使用127.0.0.1不能连接mysql的解决方法

CentOS下php使用127.0.0.1不能连接mysql的解决方法

WBOY
WBOYOriginal
2016-06-07 16:28:591719browse

php代码很简单: $server="127.0.0.1"; println("Begin"); $link = mysql_connect($server,"mysql","mysql"); if (!$link) { die('Could not connect: ' . mysql_error().mysql_errno()); } linux本机下使用php mysql.php 可以查看运行结果,但是 在我的wind

php代码很简单:


$server="127.0.0.1";
println("Begin");
$link = mysql_connect($server,"mysql","mysql");
if (!$link) {
    die('Could not connect: ' . mysql_error().mysql_errno());
}

linux本机下使用php mysql.php 可以查看运行结果,但是 在我的windows浏览器下报错:


Could not connect: Can't connect to MySQL server on '127.0.0.1' (13) 2003

原因:


#getsebool -a | grep httpd
[neo@neo phpMyTest]$ getsebool -a | grep httpd


发现 httpd_can_network_connect --> off
解决方案:


#setsebool httpd_can_network_connect 1

原来是 SELINUX,所以我一般直接关闭SELINUX和 iptables ip6tables


# 关闭SELINUX
chkconfig --level 12345 iptables off

chkconfig --level 12345 ip6tables off

service iptables stop

service ip6tables stop


查看SELinux状态:

1、/usr/sbin/sestatus -v      ##如果SELinux status参数为enabled即为开启状态

SELinux status:                 enabled

2、getenforce                 ##也可以用这个命令检查

关闭SELinux:

1、临时关闭(不用重启机器):

setenforce 0                  ##设置SELinux 成为permissive模式

                              ##setenforce 1 设置SELinux 成为enforcing模式

2、修改配置文件需要重启机器:

修改/etc/selinux/config 文件

将SELINUX=enforcing改为SELINUX=disabled

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn