如何在PHP中安装MySQL模块?

时间:2008-10-01 15:41:38

标签: php mysql windows

我更新了 php.ini 并移动 php_mysql.dll ,如steps 6 and 8 here.

中所述

我收到此错误...

Fatal error: Call to undefined function mysql_connect() in C:\inetpub...

MySQL没有出现在我的 phpinfo; 报告中。


我已经从

更新了 c:\ Windows \ php.ini 文件
; Directory in which the loadable extensions (modules) reside.  
extension_dir = "./"

; Directory in which the loadable extensions (modules) reside.  
extension_dir = ".;c:\Windows\System32"

结果:没有变化。


因此我更改了extension_dir的 php.ini 值:

extension_dir = "C:\Windows\System32"

结果:在 phpinfo; 报告中有更多内容,但MySQL仍无效。


我将文件 libmysql.dll 从文件夹 C:\ php 复制到文件夹 C:\ Windows \ System32 C :\ Windows下

结果:没有变化。


我停了并且重新启动了IIS

结果:代之以新的不同错误!

Warning: mysql_connect() [function.mysql-connect]: Access denied for  
user '...'@'localhost' (using password: YES) in C:\inetpub\...
error in query.
Fatal error: Call to a member function RecordCount() on a non-object  
in C:\inetpub\...

我在网站上找到了几个.php文件,我必须设置变量:

$db_user  
$db_pass

结果:网站有效!

4 个答案:

答案 0 :(得分:5)

正如其他人所说,php.ini中的这两个值至关重要。

我的php.ini中有以下内容:请注意尾部斜杠 - 不确定是否需要 - 但确实有效。

extension_dir = "H:\apps\php\ext\"
extension=php_mysql.dll

另外值得确保你机器上只有一个php.ini的副本 - 我遇到过这个问题,我一直在编辑一个php没有使用的php.ini文件而且非常沮丧直到我意识到

此外,如果php作为apache中的模块运行,则需要重新启动apache服务器以获取更改。如果你不确定的话,明智地做到这一点。

来自cmd提示符的“php -m”将显示从ini文件加载的模块。

答案 1 :(得分:1)

在php.ini文件中,检查扩展路径配置是否有效。

答案 2 :(得分:1)

您还需要在php.ini中启用extension = php_mysql.dll选项。另外,请确保该文件位于您设置的extension_dir中。

您可以在以下网址了解更多信息:

http://us3.php.net/manual/en/install.windows.extensions.php

答案 3 :(得分:1)

在完全不同的说明中,我可以建议WampServer吗?它应该能够立即启动并运行Apache / PHP / MySQL安装。

您甚至可以将WampServer配置文件与您自己的配置文件进行比较,以查看您最初的错误位置。