繁体   English   中英

mysql_connect不能代替本地服务器在远程服务器上工作

[英]mysql_connect can not work in remote server in stead of local server

我得到了这样的警告:

Warning: mysql_connect(): Headers and client library minor version mismatch. Headers:50537 Library:50617

当尝试将我的代码上传到远程服务器以及当前使用php 5.5的远程服务器时,这是因为mysql扩展名已被弃用,因此我必须将扩展名更改为mysqli吗? 但是在我的本地服务器上,我也在php 5.5中进行了测试,它可以正常工作

这里的问题是什么?

如果您正在运行ubuntu / debian。

     apt-cache search php5-mysqlnd

找到一个合适的:

     apt-get install php5-mysqlnd

我认为您的问题是这样的

在发布MySQL 5.6.17之后,一些用户抱怨他们的PHP应用程序引发了警告:

PHP警告:mysql_connect():标头和客户端库次要版本不匹配。 标头:50535图书馆:50617

实际上,当连接到另一个版本(5.6.17中的版本)的MySQL服务器时,在某个版本中链接到libmysqlclient18的任何应用程序都可能发生这种情况(Dotdeb的php5-mysql从Debian发行版链接到5.5.35版本)。我们的情况)。 该警告由libmysqlclient18本身引发。 这只是一个警告,在这种情况下没有任何不良行为发生的理由。

当然,我可以针对最新的libmysqlclient18(5.6.17)构建php5-mysql,但这会导致非常严重的问题,例如,当从库存的Debian发行版中向PHP加载其他与MySQL链接的模块时,符号就会重复或出现段错误(这些链接到libmysqlclient18 5.5.35)。 例如:mod_php5 + Apache + mod_auth_mysql将崩溃。

如果此警告确实使您感到困扰,请随时安装php5-mysqlnd而不是php5-mysql:

 it's a drop-in replacement it's not linked against any libmysqlclient library it won't throw any irrelevant warning about version mismatch it has a lot of benefits. See http://www.php.net/mysqlnd for more info 

我希望这有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM