centos7 解决 mysql_connect()不支持请检查mysql模块是否正确加载

时间:2022-03-14 00:43:25

故障现象:linux 安装discuz 错误提示:mysql_connect() 不支持请检查mysql模块是否正确加载.
解决办法:查看/usr/lib/php/modules/ (64位的看/usr/lib64/php/modules/)里面根本没有mysql.so
找到centos7安装盘,放入光驱,然后找到CentOS目录下的
php-mysql-5.4.16-45.el7.x86_64.rpm
php-pdo-5.4.16-45.el7.x86_64.rpm 
二个文件,然后通过FTP上传到服务器。
执行安装:

rpm -i php-mysql-5.4.16-45.el7.x86_64.rpm --nodeps --force
pm -i php-pdo-5.4.16-45.el7.x86_64.rpm  --nodeps --force

再查看so文件:
ls /usr/lib/php/modules/
dbase.so ldap.so mysqli.so mysql.so pdo_mysql.so pdo.so pdo_sqlite.so phpcups.so
mysql.so存在了。
然后配置(可不配置)

vi /etc/php.ini找到extension=msql.so,然后在它下方去掉前面分号然后添加如下:
extension=mysql.so
extension=mysqli.so
extension=pdo_MySQL.so

保存,重启httpd
/etc/init.d/httpd restart  或者 systemctl restart httpd
刷新网页,mysql已经能连上了。

解决不能打开/var/www/http/目录网页idex页面问题

查看SELinux状态(如果SELinux status参数为enabled即为开启状态)

/usr/sbin/sestatus -v 

SELinux status: enabled      《---------此处为enable
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31

关闭SELinux:

1、临时关闭(不用重启机器): 
##设置SELinux 成为permissive模式 
##setenforce 1 设置SELinux 成为enforcing模式

setenforce 0

2、修改配置文件需要重启机器: 
修改/etc/selinux/config 文件

~]# vim /etc/selinux/config
第7行代码:SELINUX=enforcing
修改成:SELINUX=disabled
然后重启机器;

  其他参考:

Centos 7 Apache 服务安装及配置https://blog.csdn.net/xgrx2008/article/details/82715186