如果php mysql客户端与mysql服务器版本不匹配会出现什么问题?
我安装了两个 mysql 服务器 5.1.32 和 5.0.77(同一台机器,os x leopard)。 我的 php mysql 扩展是针对 5.0.77 编译的(这是最简单的事情,我在安装 5.1.32 后做到了)。 我正在使用 5.1.32 安装,因为这是我编译 python MySQLdb 扩展的地方。 我很少用 php 编写代码(如果有的话)。 我主要使用的php安装是phpmyadmin。 phpmyadmin 以这种方式针对 5.1.32 mysql 服务器工作,但显示警告:
“您的 PHP MySQL 库版本 5.0.77 与您的 MySQL 服务器版本 5.1.32 不同。这可能会导致不可预测的行为。”。
我的问题。 通过这种设置,我可以预期 phpmyadmin 会出现任何严重问题吗?
我正在使用最新版本的 phpmyadmin,它通过 TCP 连接(不是套接字文件)进行连接。
I have two installations of mysql server 5.1.32 and 5.0.77 (same machine, os x leopard). My php mysql extension is compiled against 5.0.77 (that was the easiest thing to do, and I did it after installing 5.1.32). I'm using the 5.1.32 installation since that's what I compiled my python MySQLdb extension against. I don't code in php much if ever. My main use of the php installation is phpmyadmin. phpmyadmin works in this way against the 5.1.32 mysql server but shows a warning:
"Your PHP MySQL library version 5.0.77 differs from your MySQL server version 5.1.32. This may cause unpredictable behavior.".
My question. Can I expect any serious problems from phpmyadmin with this kind of setup?
I'm using the latest version of phpmyadmin, and it connects thru a tcp connection (not socket file).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
你不应该有任何问题,所有查询都是通过 TCP 发送的,它们几乎都是标准的。
我认为唯一不好的是你不能使用某些功能。
You shouldn't have any problems, all the queries are sent over TCP, they are all pretty much standard.
I think the only bad thing is that you can't use ceratin features.
如果开发人员是受人尊敬的,那么在较新的服务器版本上使用较旧的客户端版本应该不会导致任何软件出现问题。
根据开发人员的策略,将较新的客户端版本与较旧的服务器版本一起使用可能会导致问题。
If the developers are respectable, using an older client version on a newer server version shouldn't ever cause issues with any software.
Using a newer client version with an older server version may cause issues depending on the developers policies.
你应该没问题,但是两个版本之间的某些功能/错误/怪癖可能有所不同。 我建议查看 MySQL 从 5.0.77 版本到(如果有时间的话,可以查看过去)5.1.32 版本的变更日志。
在 MySQL 4.11 版本和连接到低于该版本的版本之间存储的 MySQL 用户密码存在问题。 既然你已经走到这一步了,我确信不是这样的。 作为参考,这是一个简单的修复,涉及使用 OLD_PASSWORD() 更新用户密码。
You should be ok however some functions/bugs/quirks could differ between the two versions. I would recommend looking at the MySQL's changelog from version 5.0.77 up to (and past if you have time) 5.1.32.
There was an issue with MySQL user's passwords stored between a version of MySQL 4.11 and up connecting to a version lower than that. Since you're this far I'm sure that's not it. For reference it was an easy fix involving updating the user's password with OLD_PASSWORD().