如果 php mysql 客户端与 mysql 服务器版本不匹配会出现啥问题?
Posted
技术标签:
【中文标题】如果 php mysql 客户端与 mysql 服务器版本不匹配会出现啥问题?【英文标题】:What problems can arise if php mysql client doesn't match the mysql server version?如果 php mysql 客户端与 mysql 服务器版本不匹配会出现什么问题? 【发布时间】:2010-10-14 04:16:21 【问题描述】:我有两个 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 连接(不是套接字文件)进行连接。
【问题讨论】:
【参考方案1】:您应该没有任何问题,所有查询都是通过 TCP 发送的,它们都非常标准。
我认为唯一不好的是你不能使用某些功能。
【讨论】:
【参考方案2】:如果开发人员受人尊敬,在较新的服务器版本上使用较旧的客户端版本应该不会导致任何软件出现问题。
根据开发人员的政策,使用较新的客户端版本和较旧的服务器版本可能会导致问题。
【讨论】:
【参考方案3】:您应该没问题,但是两个版本之间的某些功能/错误/怪癖可能会有所不同。我建议查看 MySQL 从 5.0.77 到 5.1.32 的变更日志(如果你有时间的话,可以查看过去)。
在 MySQL 4.11 版本和更高版本之间存储的 MySQL 用户密码连接到低于该版本的版本时存在问题。既然你已经这么远了,我敢肯定不是这样。作为参考,这是一个简单的修复方法,涉及使用 OLD_PASSWORD() 更新用户密码。
【讨论】:
以上是关于如果 php mysql 客户端与 mysql 服务器版本不匹配会出现啥问题?的主要内容,如果未能解决你的问题,请参考以下文章
1.一步一步学开发(游戏账服数据库的使用 Erlang 服务器)