Home  >  Article  >  Backend Development  >  mysql连接命令行可以php竟然不可以

mysql连接命令行可以php竟然不可以

WBOY
WBOYOriginal
2016-06-23 14:11:131113browse

我在web主机上用mysql -h 192.168.7.14 -uroot -proot -D sheep 可以连接到远程数据库,查看到里面的数据。
但是同一台服务器上用php去连竟然失败了

<?phpdefine('DB_HOST', '192.168.7.14:3306');define('DB_USER', 'root');define('DB_PASSWORD', 'root');define('DB_NAME', 'sheep');$conn=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("wrong while connect DB!");mysql_select_db(DB_NAME,$conn) or die("wrong while select DB!");mysql_query("set names utf8");echo "test";mysql_close($conn);?>

直接就输出“wrong while connect DB!”,端口去掉也不行,不用常量直接写在mysql_connect参数里面也不行。防火墙我都关了,web目录下都是root所有者和组。
还有啥可能的?


回复讨论(解决方案)

你把 die("wrong while connect DB!") 都改成
die(mysql_error())

不用指定3306端口。

你把 die("wrong while connect DB!") 都改成
die(mysql_error())
输出Can't connect to MySQL server on '192.168.7.14' (13)

不用指定3306端口。 不指定端口也不行啊

付过程序跟服务器同一台服务器就直接用localhost吧

echo phpinfo();看看mysql扩展是否正常。

echo phpinfo();看看mysql扩展是否正常。 输出很多,几乎都正常

执行setenforce 0就可以了

http://yemaosheng.com/?p=191
不过不懂为什么,先这样吧


你把 die("wrong while connect DB!") 都改成
die(mysql_error())
输出Can't connect to MySQL server on '192.168.7.14' (13)
防火墙拦截了从外部访问的请求。
关闭防火墙。

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