[Linux] PHP Startup: Unable to load dynamic library msql.so エラーの対処方法

PHPを実行したり、「# php -v」でphpのバージョンを調べたりすると以下のようなエラーメッセージが出るときがあります。
「PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib64/php/modules/msql.so’ – /usr/lib64/php/modules/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0」
このエラーの対処方法は以下のようになります。

エラーの確認

phpのバージョンを調べるときにコマンドを入力したらエラー(警告)が出ました。

#php -v
[実行結果]
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/msql.so' - /usr/lib64/php/modules/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP 5.4.16 (cli) (built: Nov  6 2016 00:29:02)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies

php.iniの編集

16行目が下記のようにコメントアウトされているとエラーになります。php.iniではコメントアウトは「#」ではなく「;」になっています。
デフォルトではコメントアウトしてある状態ですが、自分の場合はphpMyAdminを使うとき、php-mysqlパッケージをインストールし、その時に「;」を外してしまっていました。(外す必要はなかったようです)

;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;

; If you wish to have an extension loaded automatically, use the following
; syntax:
;
;   extension=modulename.extension
;
; For example, on Windows:
;
;   extension=msql.dll
;
; ... or under UNIX:
;
   extension=msql.so
;
; ... or with a path:
;
;   extension=/path/to/extension/msql.so
;
; If you only provide the name of the extension, PHP will look for it in its
; default extension directory.

16行目を「; extension=msql.so」に修正したらエラーメッセージが消えました。



Author: webmaster