答案1
您是否检查过 yum 是否已全部安装?您确定它是 MySQL 而不是看起来像 MySQL 的 MariaDB 吗?
您可以检查
yum list installed | grep 'sql\|mariadb'
您还可以使用以下命令直接向 PHP 请求模块
php -m | grep sql
然后使用
yum install mysql mysql-devel mysql-server php-mysqlnd
或者
yum install mariadb mariadb-devel mariadb-server php-mysqlnd
这足以让 PHP 连接到数据库,尽管您可能需要根据您的项目添加一些额外的包。
哦,还有一个愚蠢的问题,你检查过 SQL 是否正在运行吗?
systemctl status mysqld
systemctl status mariadb
答案2
home 下的 php 目录似乎肯定表明 PHP 是通过某种方式手动安装的。使用 来查看系统显示通过包管理器安装的内容sudo yum list installed | grep -i php
。
在 Redhat 上,我相信 5.4/5.6 是操作系统附带的默认版本,其他版本(包括 7)可通过 Redhat 软件集合获得。
您可以安装多个版本的 PHP,并且看起来这里发生的情况是安装了多个版本,并且 mysqlnd/mysqli 无法用于 Apache 正在使用的版本。