在使用 CentOS 7 操作系统时,我们可能会遇到 MySQL 不能连接 PHP 的问题。这是因为 CentOS 7 自带的 MariaDB 和 MySQL 冲突,导致连接不上数据库。本文将为您介绍如何解决 CentOS 7 中 MySQL 连不上 PHP 问题。

一、禁用 MariaDB

  1. 为了避免与 MariaDB 冲突,我们需要先将它禁用掉。可以使用以下命令:

    systemctl stop mariadb.service # 停止MariaDB服务

    systemctl disable mariadb.service # 禁用MariaDB服务

  2. 禁用之后,我们需要确认已经停止了 MariaDB 服务。可以使用以下命令:

    systemctl status mariadb.service # 查看MariaDB服务状态

    如果状态显示为 inactive,说明已经停止 Mariadb 服务。

二、安装 MySQL

  1. 安装 MySQL 的依赖:

    yum -y install wget

    yum -y install net-tools

  2. 下载 MySQL 安装包:

    wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

  3. 安装 MySQL:

    rpm -ivh mysql57-community-release-el7-11.noarch.rpm

    yum install mysql-community-server

  4. 安装完成后,启动 MySQL:

    systemctl start mysqld

    systemctl enable mysqld

三、修改 MySQL 配置

  1. 连接 MySQL:

    mysql -u root -p

    输入密码

  2. 修改 MySQL 配置文件:

    vim /etc/my.cnf

  3. 在 [mysqld] 配置下添加以下内容:

    skip-grant-tables

    初始化密码:

    use mysql;

    update user set authentication_string=password('password') where user='root';

    flush privileges;

    quit;

  4. 修改配置文件中 skip-grant-tables 为如下内容:

    skip-grant-tables

    skip-character-set-client-handshake

  5. 重新启动 MySQL 服务:

    重新启动MySQL服务

    systemctl restart mysqld

四、修改 PHP 配置文件

  1. 编辑 PHP 配置文件:

    vim /etc/php.ini

  2. 搜索 mysql.default_socket 或者 mysqli.default_socket,将其改为 MySQL 的 socket 文件地址:

    mysql.default_socket = /var/lib/mysql/mysql.sock

    mysqli.default_socket = /var/lib/mysql/mysql.sock

    pdo_mysql.default_socket = /var/lib/mysql/mysql.sock

  3. 保存修改并退出。

五、测试连接

  1. 在终端里输入以下代码(用户名和密码需要自行修改):

    <?php
    $con = mysqli_connect("localhost","username","password");
    if (!$con)
    {

    die('Could not connect: ' . mysqli_error());
    登录后复制

    }
    echo 'Connected successfully';
    mysqli_close($con);
    ?>

  2. 保存该文件到 Apache 的根目录,并通过浏览器访问该文件。

如果输出 Connected successfully,则说明现在可以通过 PHP 连接 MySQL 数据库。如若测试未通过,请检查以上步骤,重新查找问题所在。

总结:

以上是在 CentOS 7 中 MySQL 连接不上 PHP 的解决方法,希望能给需要的同学提供帮助。如果您还有其它问题,欢迎留言探讨。

以上就是如何解决CentOS7中MySQL连不上PHP问题的详细内容,更多请关注Work网其它相关文章!

09-14 00:43