Mysql

無法載入動態庫(pcre、spl、gettaxt、mhash、snmp、sockets、tokenizer)

  • December 11, 2011

我對 freeBSD 有點陌生,並試圖建立一個網路伺服器。

我已經成功安裝了 phpmyadmin 和 phpinfo(); 工作正常。但是當我輸入“php -v”時,我收到了一些警告:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20090626/pcre.so' - Cannot open "/usr/local/lib/php/20090626/pcre.so" in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20090626/spl.so' - Cannot open "/usr/local/lib/php/20090626/spl.so" in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20090626/gettext.so' - Cannot open "/usr/local/lib/php/20090626/gettext.so" in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20090626/mhash.so' - Cannot open "/usr/local/lib/php/20090626/mhash.so" in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20090626/snmp.so' - Cannot open "/usr/local/lib/php/20090626/snmp.so" in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20090626/sockets.so' - Cannot open "/usr/local/lib/php/20090626/sockets.so" in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20090626/tokenizer.so' - Cannot open "/usr/local/lib/php/20090626/tokenizer.so" in Unknown on line 0
PHP 5.3.8 with Suhosin-Patch (cli) (built: Dec  1 2011 14:19:00) 
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies

此外,當我嘗試安裝 drupal 時,我無法選擇 mysql 作為數據庫,但我不確定這是否與上述問題有關。

聽起來這些擴展文件要麼失去,要麼執行 PHP 的使用者無法讀取它們(錯誤的權限或所有權),或者您extensions.ini需要更新以匹配您安裝的模組。不幸的是,所有故障模式都會產生相同的錯誤。

如果它們只是失去,則需要重新安裝它們。我建議使用php5-extensions元埠,但您也可以使用以下方法一一安裝它們:

portinstall -Rc php5-gettext [etc.]

我看到列出的其中之一是pcre.so. 我相信 PCRE 現在預設包含在 PHP 5.3.x 中。這個安裝是從舊版本的 PHP 升級而來的嗎?如果是這樣,我認為pcre.so你的行extensions.ini可以被註釋掉。

例如,我的一個測試系統目前包含:

$ php -v
PHP 5.3.3 with Suhosin-Patch (cli) (built: Nov 13 2010 19:28:38)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

$ cat /usr/local/etc/php/extensions.ini
extension=filter.so
extension=session.so
extension=mbstring.so
extension=xmlwriter.so
extension=sqlite.so
extension=posix.so
extension=dom.so
extension=xmlreader.so
extension=mcrypt.so
extension=simplexml.so
extension=exif.so
extension=zlib.so
extension=tokenizer.so
extension=json.so
extension=gd.so
extension=iconv.so
extension=gettext.so
extension=readline.so
extension=xml.so
extension=bz2.so
extension=mysqli.so
extension=hash.so
extension=mysql.so
extension=ctype.so
extension=pdo.so
extension=pdo_sqlite.so
extension=pdo_mysql.so
extension=openssl.so
extension=pdf.so

…並且該目錄包含:

$ ls -lA /usr/local/lib/php/20090626/ 
total 4672
-r--r--r--  1 root  wheel    33066 Nov 13  2010 bz2.so
-r--r--r--  1 root  wheel    20401 Nov 13  2010 ctype.so
-r--r--r--  1 root  wheel   231335 Nov 13  2010 dom.so
-r--r--r--  1 root  wheel    66043 Nov 13  2010 exif.so
-r--r--r--  1 root  wheel    48992 Nov 13  2010 filter.so
-r--r--r--  1 root  wheel   370277 Nov 13  2010 gd.so
-r--r--r--  1 root  wheel    16993 Nov 13  2010 gettext.so
-r--r--r--  1 root  wheel   170710 Nov 13  2010 hash.so
-r--r--r--  1 root  wheel    46473 Nov 13  2010 iconv.so
-r--r--r--  1 root  wheel    39465 Nov 13  2010 json.so
-r--r--r--  1 root  wheel  1972043 Nov 13  2010 mbstring.so
-r--r--r--  1 root  wheel    55648 Nov 13  2010 mcrypt.so
-r--r--r--  1 root  wheel    68010 Nov 13  2010 mysql.so
-r--r--r--  1 root  wheel   165450 Nov 13  2010 mysqli.so
-r--r--r--  1 root  wheel   144290 Jan 30  2011 openssl.so
-r--r--r--  1 root  wheel   180661 Jun 16 20:40 pdf.so
-r--r--r--  1 root  wheel   116922 Nov 13  2010 pdo.so
-r--r--r--  1 root  wheel    38100 Nov 13  2010 pdo_mysql.so
-r--r--r--  1 root  wheel    33347 Nov 13  2010 pdo_sqlite.so
-r--r--r--  1 root  wheel    40794 Nov 13  2010 posix.so
-r--r--r--  1 root  wheel    27386 Nov 13  2010 readline.so
-r--r--r--  1 root  wheel    74152 Nov 13  2010 session.so
-r--r--r--  1 root  wheel    58057 Nov 13  2010 simplexml.so
-r--r--r--  1 root  wheel   405571 Nov 13  2010 sqlite.so
-r--r--r--  1 root  wheel    19723 Nov 13  2010 tokenizer.so
-r--r--r--  1 root  wheel    63158 Nov 13  2010 xml.so
-r--r--r--  1 root  wheel    44015 Nov 13  2010 xmlreader.so
-r--r--r--  1 root  wheel    59210 Nov 13  2010 xmlwriter.so
-r--r--r--  1 root  wheel    45523 Nov 13  2010 zlib.so

請注意,所有文件都存在且世界可讀,但pcre.so不存在。

最後,請注意,我對順序的extensions.ini重要性記憶模糊,因為以錯誤的順序載入它們可能會導致模組載入失敗。雖然您的症狀目前似乎並未表明這是一個問題,但您應該小心不要extensions.ini不必要地重新排列線路。

如果您發布extensions.ini文件內容和擴展目錄的長列表 ( ls -la),我可能會提供進一步幫助。我建議對您的擴展進行排序,然後如果您的 MySQL 問題仍然存在,我們可以解決這個問題。

引用自:https://serverfault.com/questions/336673