您的PHP MySQL库版本与您的MySQL服务器版本不同

时间:2010-03-01 18:01:21

标签: php mysql linux debian

我最近将Debian 5.0.4服务器上的MySQL升级到5.1。现在phpMyAdmin显示以下警告:

Your PHP MySQL library version 5.0.51a differs from your MySQL server version 5.1.43

是否可能导致任何问题?

6 个答案:

答案 0 :(得分:23)

该消息表明:

  • 您使用的是版本5.1.43的MySQL服务器
  • 但是PHP 用来与该服务器通信的库已被编译为与MySQL的 5.0.x版本进行通信。

理论上,这不应该导致任何实际问题:次要版本往往兼容;但您可能需要更新PHP使用的库;也许像“libmysql”这样的包,或类似的东西(我没有Debian机器)


如果你想让警告消失(即使我不确定它确实会导致任何大问题),你必须更新PHP组件用来与MySQL通信。
注意:有了依赖性,实际上,升级一个软件包可能并不那么容易......

我会说你必须更新像php5-mysql这样的东西;这意味着:

apt-get install php5-mysql

(根据this page - 除其他外 - 要更新单个套餐,您必须使用install

如果您正在使用aptitude,而不是apt-get ...不确定您应该使用哪个正确的选项来更新一个包;仍然,aptitude safe-upgrade应该向您提供它将升级的包列表,这将允许您决定是否要继续...


但你在另一个答案中说,Debian默认使用MySQL 5.0发布了一个答案 - 这意味着PHP的“官方”模块可能是针对libmysql 5.0而不是libmysql 5.1编译的。

要解决这个问题,你必须要么:

  • 找一个提供针对libmysql 5.1编译的PHP (或者至少是mysql扩展名)的存储库
  • 重新编译 PHP和/或针对系统当前使用的libmysql版本的mysql扩展名 - 即libmysql 5.1

答案 1 :(得分:0)

尝试运行sudo apt-get update mysql-client

答案 2 :(得分:0)

我在phpMyAdmin控制台中看到了这一点 - 我在Google云上运行Debian 8,最近升级到mysql 5.7.21。我不得不运行PHP NativeDriver来使其平息

Failed to load http://localhost:8080/api: Redirect from 'http://localhost:8080/api' to 'http://localhost:8080/login' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:4200' is therefore not allowed access. 

答案 3 :(得分:0)

所以你基本上有 php-mysql 和 php-mysqlnd 驱动程序...

在 CentOS 7 上,我通过以下方式消除了版本错误:

yum remove php-mysql.x86_64     
yum install php-mysqlnd.x86_64

请注意,删除 php-mysql 也删除了 phpMyAdmin,但我再次安装它没有任何问题。

与 lib 版本相关的错误现已消失,但不确定 phpMyAdmin 是否只是不检查 mysqlnd 版本的驱动程序版本,或者 php-mysqlnd 更兼容。

答案 4 :(得分:-1)

在Debian / Ubuntu中,您可以使用/etc/apt/sources.list中定义的最新存储库中的以下命令来克服该通知。

 sudo apt-get upgrade mysql-client

这将完美地解决您的问题。

度过美好的一天。

答案 5 :(得分:-2)

sudo apt-get update php5-mysql