我知道这两个版本并没有很好的结合在一起,但奇怪的是,XAMPP以某种方式允许它发生。 我们有一台运行XAMPP的机器,不pipe怎样(不止我),都允许PHP 5.3.1与MySQL 4.0.18数据库对话。 我们试图复制这个设置(减去XAMPP),并在一台新机器上安装相同版本的Apache,MySQL和PHP,但从逻辑上来说,我们试图解决以下错误消息:
警告:mysql_connect():不支持连接到3.22,3.23和4.0。 服务器在C:\ Program Files \ Apache Software Foundation \ Apache2.2 \ htdocs \ nktest.php中是4.0.18-max-debug在第3行警告:mysql_connect():连接到3.22,3.23和4.0服务器不支持第3行的C:\ Program Files \ Apache Software Foundation \ Apache2.2 \ htdocs \ nktest.php失败:不支持连接到3.22,3.23和4.0服务器
不幸的是,我们被困在MySQL 4.0.18,因为我们在该框上运行的应用程序需要它,并带有预build版本。 我们还需要使用PHP 5.3,因为另一个依赖于它的包,所以我们被卡住了。 我试图弄清楚XAMPP在幕后做了些什么,但我似乎无法理解它。
总之,是否有人知道在Windows Server 2008机器上连接到MySQL 4.0.18数据库w / PHP 5.3.1的方法? 应用程序需要访问所有标准的MySQL库函数,即mysql_connect(),因此严格使用mysqli不是一个选项。
XAMPP做了一些黑客行为,这种黑客行为在networking服务器上运行并不是很安全的
有没有什么原因,你不能在你的系统上运行2个PHP二进制文件,并调用旧版本的网站,需要mysql4分贝,还有没有任何理由的预编译版本不能升级或更换? 当然,应用程序可以从数据库中分离出来,而不需要自己的预编译版本?
另一个select是将mysql4应用程序放在服务器上的虚拟机上运行一个较旧版本的php,然后你可以为你的其他网站运行最新版本的mysql和php
我们通过做两件事来完成这个工作:
1)在Windows上编译PHP 5.3.1 w / –disable-mysqlnd标志2)忽略编译中的mysqli。
现在PHP 5.3.1正在与MySQL 4.018进行交stream。