나는 다음과 같은 경고를 발견했습니다.
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/