php中不能加载php_mysql.dll、php_mysqli.dll解决方法

今天启动php环境时,发现mysql模块功能不能使用,网站返回500错误。查看了下apache下错误日志。发现下面一段错误信息:

PHP Warning: PHP Startup: Unable to load dynamic library 'D:/wwwserver/php/ext//php_mysql.dll' - /xd5/xd2/xb2/xbb/xb5/xbd/xd6/xb8/xb6/xa8/xb5/xc4/xc4/xa3/xbf/xe9/xa1/xa3/r/n in Unknown on line 0

这说明php没有成功加载php_mysql.dll这个文件,首先要确保php配置文件php.ini中extension_dir值填写正确,最好使用绝对地址,如:

extension_dir = "D:/wwwserver/php/ext"

如果其他dll加载成功,而php_mysql.dll、php_mysqli.dll加载未成功,则按下面两种方法解决:

(1)、将php目录下libmysql.dll复制到apache目录下bin子目录中

(2)、apache配置文件httpd.conf 加上下面一段话

LoadFile "D:/wwwserver/php/libmysql.dll"

说明:上面代码LoadFile "D:/wwwserver/php/libmysql.dll" 其中"D:/wwwserver/php/"为php的目录,重启过后还是不行,可能就是版本的问题了,如apache下不要使用vc9版本php,新手就建议下个一键安装包.

附另一解决办法,apache下,比如我的apache装在D盘,目录是D:/severs/apache ,PHP的目录是D:/servers/php5,这样,把D:/servers/php5/libmysql.dll拷贝到D:/servers/apache/bin这个目录下面,重启apache,问题迎刃而解!~~

iis下:将php目录下的libmysql.dll复制到c:/windows/system32/目录里面,然后重启iis即可。如果提示正在使用,可以先停止iis(iisreset /stop)即可,当然提示其它dll文件也是一样的解决方法,一般情况下是先检查php目录权限,一般everyone读取,浏览运行即可。