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
_
この問題を解決する方法を知っている人はいますか?これがなぜこのようにランダムに発生するのか、私にはわかりません。スクリプトは、金曜日の週末に出発する前に機能しており、私の知る限り、何も変わっていません。
Sudo yum install php-mysqlnd
を使用して解決できました。初めてインストールするときにタイプミスしたに違いありません。どー!
php-mysqlnd
をインストールした後、Sudo service httpd restart
を実行します。
どうやら、同僚がmysql
ドライバーをいじりました。 php
またはmysql
に関連するものを変更したかどうかを尋ね、変更していないと私に言った。 .bash_history
を見ると、php
と多数のmysql
ドライバーが再インストールされていることがわかりました。
学んだ教訓!