web-dev-qa-db-ja.com

PHPとMysqlでマイナーバージョンの不一致エラーが発生する

PHPスクリプトで_new mysqli_インスタンスをインスタンス化しようとすると、このエラーがランダムに発生し始めました。

mysqli :: mysqli():ヘッダーとクライアントライブラリのマイナーバージョンの不一致。ヘッダー:50541ライブラリ:50626

_Sudo yum list installed_を実行すると、バージョンが同じに見えるため、少し混乱しています。どちらの方法でも、_Sudo yum update_を実行しても、パッケージを実際に更新することはありません。

_Sudo yum list installed_(phpパッケージのみ)の出力は次のとおりです。

_php.x86_64                  5.4.16-36.el7_1                          @updates
php-cli.x86_64              5.4.16-36.el7_1                          @updates
php-common.x86_64           5.4.16-36.el7_1                          @updates
php-devel.x86_64            5.4.16-36.el7_1                          @updates
php-mbstring.x86_64         5.4.16-36.el7_1                          @updates
php-mcrypt.x86_64           5.4.16-3.el7                             @epel
php-mssql.x86_64            5.4.16-3.el7                             @epel
php-mysql.x86_64            5.4.16-36.el7_1                          @updates
php-pdo.x86_64              5.4.16-36.el7_1                          @updates
php-soap.x86_64             5.4.16-36.el7_1                          @updates
_

CentOS Linux release 7.1.1503 (Core)、_PHP 5.4.16_、_5.6.26 MySQL Community Server_を使用しています。

この質問に対する他の回答で、_php-mysqlnd_ドライバーをインストールできることがわかりましたが、そのドライバーはyumのパッケージにリストされていません。

以下は、yumを通じてインストールできるphpパッケージです。

_php.x86_64                                 5.4.16-36.el7_1             @updates 
php-cli.x86_64                             5.4.16-36.el7_1             @updates 
php-common.x86_64                          5.4.16-36.el7_1             @updates 
php-devel.x86_64                           5.4.16-36.el7_1             @updates 
php-mbstring.x86_64                        5.4.16-36.el7_1             @updates 
php-mcrypt.x86_64                          5.4.16-3.el7                @epel    
php-mssql.x86_64                           5.4.16-3.el7                @epel    
php-mysql.x86_64                           5.4.16-36.el7_1             @updates 
php-pdo.x86_64                             5.4.16-36.el7_1             @updates 
php-soap.x86_64                            5.4.16-36.el7_1             @updates 
_

この問題を解決する方法を知っている人はいますか?これがなぜこのようにランダムに発生するのか、私にはわかりません。スクリプトは、金曜日の週末に出発する前に機能しており、私の知る限り、何も変わっていません。

3
MrWizdl

Sudo yum install php-mysqlndを使用して解決できました。初めてインストールするときにタイプミスしたに違いありません。どー!

php-mysqlndをインストールした後、Sudo service httpd restartを実行します。

どうやら、同僚がmysqlドライバーをいじりました。 phpまたはmysqlに関連するものを変更したかどうかを尋ね、変更していないと私に言った。 .bash_historyを見ると、phpと多数のmysqlドライバーが再インストールされていることがわかりました。

学んだ教訓!

3
MrWizdl