次の警告に遭遇しました:
PHP Warning: mysqli_connect(): Headers and client library minor version mismatch. Headers:50550 Library:50631 in /var/www/html/web_app/test/browser/dbconn.php on line 31
php-mysql
オンラインで調べた結果、次のバージョンのMySQLドライバを削除してインストールする必要があることがわかりましたphp-mysqlnd
。ここで例として挙げられているそしてここでも以下の操作を実行したところ、次の結果が得られました。
削除手順:
[root@myservername username]# sudo yum remove php5-mysql
Loaded plugins: langpacks, rhnplugin, ulninfo
This system is receiving updates from ULN.
No Match for argument: php5-mysql
No Packages marked for removal
インストール手順:
[root@myservername username]#sudo yum install php5-mysqlnd
Loaded plugins: langpacks, rhnplugin, ulninfo
This system is receiving updates from ULN.
No package php5-mysqlnd available.
Error: Nothing to do
参考までに、Linux サーバー関連の情報を以下に示します。
[root@myservername username]# cat /etc/*-release
Oracle Linux Server release 7.2
NAME="Oracle Linux Server"
VERSION="7.2"
ID="ol"
VERSION_ID="7.2"
PRETTY_NAME="Oracle Linux Server 7.2"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:7:2:server"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"
ORACLE_BUGZILLA_PRODUCT="Oracle Linux 7"
ORACLE_BUGZILLA_PRODUCT_VERSION=7.2
ORACLE_SUPPORT_PRODUCT="Oracle Linux"
ORACLE_SUPPORT_PRODUCT_VERSION=7.2
Red Hat Enterprise Linux Server release 7.2 (Maipo)
Oracle Linux Server release 7.2
上記の PHP 警告が原因で、他の MySQL 接続関連のエラーが発生していると思います。PHP 警告が他のエラーの原因であると疑う理由は、同じコードが phpmyadmin を使用してローカルホストで完全に正常に実行されるためです。
私のPHPバージョンは5.4.16です
答え1
これを試して:
sudo yum install php-mysql
また、
sudo yum list installed | grep php
そして、
ls -l /etc/yum.repos.d/