2009-02-13 123 views
14

WAMP安裝罰款,沒有問題,但...WAMP無法加載mysqli擴展

當去phpMyAdmin的,我從phpMyAdmin的得到的錯誤如下:

Cannot load mysqli extension. Please check your PHP configuration 

此外,phpMyAdmin的文件解釋了這一錯誤消息如下:

要連接到MySQL服務器,PHP需要一組名爲「MySQL擴展」的MySQL函數集 。此擴展可能是PHP 分配(編譯)的一部分,否則需要動態加載 。它的名字可能是mysql.so或php_mysql.dll。 phpMyAdmin試圖加載擴展但失敗。通常,通過安裝名爲「PHP-MySQL」 或類似軟件的軟件包可以解決 問題。

最後,apache_error.log文件具有以下PHP警告(見MySQL的警告):

PHP Warning: Zend Optimizer does not support this version of PHP - please upgrade to the latest version of Zend Optimizer in Unknown on line 0 
PHP Warning: Zend Platform does not support this version of PHP - please upgrade to the latest version of Zend Platform in Unknown on line 0 
PHP Warning: Zend Debug Server does not support this version of PHP - please upgrade to the latest version of Zend Debug Server in Unknown on line 0 
PHP Warning: gd wrapper does not support this version of PHP - please upgrade to the latest version of gd wrapper in Unknown on line 0 
PHP Warning: java wrapper does not support this version of PHP - please upgrade to the latest version of java wrapper in Unknown on line 0 
PHP Warning: mysql wrapper does not support this version of PHP - please upgrade to the latest version of mysql wrapper in Unknown on line 0 

所以,對於一些PHP原因是不承認MySQL擴展。

任何人都知道爲什麼?任何解決方案或解決方法?

+0

我有完全相同的問題。 – WalterJ89 2009-03-10 06:49:20

回答

1

我有同樣的問題。我安裝了WAMP服務器。一切工作正常。然後有一天我重新啓動了電腦,它停止工作了!我試圖拼命地通過所有幫助職位,並做他們,但沒有工作。

他們通常建議你做的是,首先去你的php.ini文件,並確保你的'extension_dir'設置正確。然後,以確保這兩條線是不評論(刪除;盈方): 擴展=激活php_mysql.dll 延長= php_mysqli.dll

那麼一些建議我下載這兩個文件的新副本,但沒有奏效。我也嘗試卸載所有東西(php/mysql/apache)並重新安裝了幾次WAMP服務器的新副本,但沒有運氣。

最後,我設法找到了一種替代解決方案。我切換到'easyphp'(http://www.easyphp.org/)。這與WAMP非常相似。首先,我對我的sql數據庫進行了備份,以便我可以在新安裝中重新加載它們。

然後我安裝了'easyphp',一切似乎都正常。我從我的備份中重新加載了我的sql數據庫,現在情況已經恢復正常。

我希望有人患有類似的問題。會覺得這很有用。如果有人真的找到修復WAMP服務器的工作。請儘可能在這裏張貼這麼多人會受益。

5

首先,請確保php.ini文件正在加載mysqli擴展名。
如果您使用的是WAMPServer,請點擊系統托盤中的圖標,進入PHP - >PHP Extensions,並確保它已被選中。如果沒有,請進入php.ini文件並確保該行:extension=php_mysqli.dll未被註釋(例如,如果存在,則刪除;)。如果該行不存在,請添加它。

如果這仍然不起作用,請再次檢查是否正在加載正確的php.ini文件。
爲此,請查看您的phpinfo()(適用於WAMPServer的Here)。向下滾動至Loaded Configuration File行,查看正在加載哪個php.iniMake sure it is the right file. If you're using WAMPServer, it should be(WAMP INSTALL FOLDER)\ bin \ apache \ Apache2.2.11 \ bin \ php.ini . By default, it is C:\ wamp \ bin \ apache \ Apache2.2.11 \ bin \ php.ini`。

如果正在加載不同的php.ini文件,只需將其重命名爲其他內容,以便PHP將嘗試在其他位置找到該文件。應該有一個方法來指定哪些想要使用,但我忘了如何做到這一點...

如果這仍然無法正常工作...嘗試搞亂phpMyAdmin的設置,或使用其他答案,但恐怕我無法超越這一點。

19

我刪除程序文件的PHP廣告都開始工作,這個問題有PHP

+3

我也是。您可以檢查phpinfo()正在加載哪個php.ini。 – peterorum 2009-10-19 23:25:06

1

的兩個安裝在wampserver去php.ini中。打開文件並取消註釋extension = msql.dll,方法是刪除各個操作系統的分號(;)。

0

只是想在這一個鐘聲。使用Wamp Server 2.0,並使用Zend Studio和Zend調試器進行開發。

我還沒有能夠(在某些時候會回到它)得到Zend調試器與PHP 5.3工作。所以在wamp中,我加載了早期的PHP版本5.2.11。訪問php我的管理員時遇到同樣的錯誤。

我所要做的就是將「extension_dir」的php.ini文件值更改爲c:/wamp/bin/php/php5.2.11/ext/,以匹配我使用的php版本。之後,這一切都很好。

1

還設置了MySQL密碼:

SET PASSWORD FOR [email protected]=PASSWORD('your_password'); 

而且在config.inc.php中phpMyAdmin的MySQL的密碼:

$cfg['Servers'][$i]['password'] = 'your_password'; 
0

有同樣的問題,與WAMP。嘗試用備份來交換你當前版本的php.ini。有一個在:wamp\bin\php\php5.3.0phpForApache.txt。爲我工作。

1

只需添加在php.ini:

[PHP_MCRYPT] 
extension=php_mcrypt.dll 
[PHP_MYSQL] 
extension=php_mysql.dll 
[PHP_MYSQLI] 
extension=php_mysqli.dll 
4

我嘗試了許多解決方案,並沒有爲我工作。我嘗試了以下解決方案:

  • 重啓wampserver
  • 重新安裝wampserver在這個問題中提及
  • 重啓機器
  • 和所有其他的解決方案。

但是,這些都沒有工作。然後我發現我的PHPMyAdmin沒有在Chrome中工作,並在Firefox中工作。所以我嘗試清除緩存,重新啓動瀏覽器等,但仍然無法正常工作。

然後我從C:\wamp\tmp中刪除了所有的文件,然後再試一次,它就可以工作。我不確定它爲什麼有效,但這是我的想法。會話被緩存了,沒有被清除。所以當我刪除這個目錄中的所有文件時,所有的會話都被刪除了,因此它工作正常。

0

我有這個問題,花了2個小時嘗試所有的解決方案在線,沒有工作。

嘗試這樣做,它woked:

變化

mysql.default_host =

mysql.default_host =本地主機

並重新啓動WAMP。注意你是否使用mysqli。

0

我有同樣的錯誤。當我增加腳本內存大小並啓用E_ALL然後重新啓動服務器時,我在phpmyadmin中出現了該錯誤。我所需要做的就是重新啓動計算機!

0

我得到了這個問題很長一段時間。
嘗試了我在論壇上看到的所有內容,並且最後對我有用:
打開你的php.ini(我假設你已經裝載了好的...)並找到這條線 mysqli.default_port = 3306
變化爲
mysqli.default_port = 80
重新啓動所有服務
轉到本地主機/ phpMyAdmin的 - >將無法正常工作
重新打開php.ini文件,並鍵入此
mysqli.default_port = 3306
重新啓動所有服務
Worke d對我來說。

0

對於我來說,搜索所有日誌/互聯網/每一個非正常的東西后,我工作。 你必須註冊DL:

通過應用:

WAMP -> PHP settings -> enable dl 

# php.ini # 

; Whether or not to enable the dl() function. The dl() function does NOT work 
; properly in multithreaded servers, such as IIS or Zeus, and is automatically 
; disabled on them. 
; http://php.net/enable-dl 
enable_dl = On 
0

我剛安裝WampServer,並面臨着同樣的問題。我找到了解決方案,這對我很有用,它非常簡單。

  1. 禁用PHP擴展php_mysqli
  2. 重新啓動WampServer,請訪問本地phpmyadmin
  3. 啓用php_mysqli回來。
  4. 重複步驟2

幾個頁面刷新後,剩下的錯誤板(約MySQLsqli)已經走了。

0

我努力通過 連連安裝WAMP, 由通過替換index.php文件,

重新啓動機器, 檢查php.ini文件, 但沒有工作。 然後我去wamp/temp並刪除所有文件,現在它工作正常。

1

我用兩個PHP版本運行WAMP 1)5.2.9和2)5.2.13。

根據網站要求,我需要將PHP版本從5.2.13更改爲5.2.9。交換PHP版本後,錯誤是「mysqli擴展名缺失」。經過很長時間的調試後,我才知道這是由於php.ini文件中的「extension_dir」路徑錯誤造成的。

所以我改變了它的價值:

老: 「下extension_dir」 C:/wamp/bin/php/php5.2.13/ext/

新: 「下extension_dir」 C:/ WAMP /斌/ php/php5.2.9/ext/

重新啓動wamp服務器中的所有服務,然後修復它。