Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menyelesaikan masalah yang MySQL tidak dapat menyambung ke PHP dalam CentOS7

Bagaimana untuk menyelesaikan masalah yang MySQL tidak dapat menyambung ke PHP dalam CentOS7

PHPz
PHPzasal
2023-04-13 09:20:09775semak imbas

Apabila menggunakan sistem pengendalian CentOS 7, kami mungkin menghadapi masalah yang MySQL tidak dapat menyambung ke PHP. Ini kerana CentOS 7 datang dengan konflik antara MariaDB dan MySQL, mengakibatkan ketidakupayaan untuk menyambung ke pangkalan data. Artikel ini akan memperkenalkan anda cara menyelesaikan masalah yang MySQL tidak dapat menyambung ke PHP dalam CentOS 7.

1. Lumpuhkan MariaDB

  1. Untuk mengelakkan konflik dengan MariaDB, kami perlu melumpuhkannya terlebih dahulu. Anda boleh menggunakan arahan berikut:

    systemctl stop mariadb.service # Hentikan perkhidmatan MariaDB

    systemctl lumpuhkan mariadb.service # Lumpuhkan perkhidmatan MariaDB

  2. Selepas melumpuhkan, Kami perlu mengesahkan bahawa perkhidmatan MariaDB telah dihentikan. Anda boleh menggunakan arahan berikut:

    systemctl status mariadb.service # Semak status perkhidmatan MariaDB

    Jika status menunjukkan tidak aktif, ini bermakna perkhidmatan Mariadb telah dihentikan.

2. Pasang MySQL

  1. Pasang kebergantungan MySQL:

    yum -y install wget

    yum -y install net-tools

  2. Muat turun pakej pemasangan MySQL:

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

  3. Pasang MySQL:

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

    yum pasang mysql-community-server

  4. Selepas pemasangan selesai, mulakan MySQL:

    systemctl mula mysqld

    systemctl enable mysqld

3. Ubah suai konfigurasi MySQL

  1. Sambung ke MySQL:

    mysql -u root -p

    Masukkan kata laluan

  2. Ubah suai fail konfigurasi MySQL:

    vim /etc/my.cnf

  3. Tambah kandungan berikut di bawah [mysqld] konfigurasi:

    skip-grant-tables

    Kata laluan permulaan:

    gunakan mysql;

    kemas kini set pengguna authentication_string=password('password') tempat pengguna ='root';

    keistimewaan flush;

    berhenti;

  4. Ubah suai skip-grant-tables dalam fail konfigurasi kepada kandungan berikut:

    skip- grant-tables

    skip-character-set-client-handshake

  5. Mulakan semula perkhidmatan MySQL:

    Mulakan semula Perkhidmatan MySQL

    systemctl mulakan semula mysqld

4. Ubah suai fail konfigurasi PHP

  1. Edit fail konfigurasi PHP:

    vim /etc/php .ini

  2. Cari mysql.default_socket atau mysqli.default_socket dan tukarkannya kepada alamat fail soket MySQL:

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

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

    pdo_mysql.default_socket = /var/lib/qlql/my .sock

  3. Simpan perubahan dan keluar.

5 Uji sambungan

  1. Masukkan kod berikut dalam terminal (nama pengguna dan kata laluan perlu diubah suai sendiri):

    $con = mysqli_connect("localhost","nama pengguna","kata laluan");
    jika (!$con)
    {

    die('Could not connect: ' . mysqli_error());

    }
    gema 'Berjaya disambungkan';
    mysqli_close($con);
    ?>

  2. Simpan fail ke direktori akar Apache dan akses fail melalui penyemak imbas.

Jika Connected berjaya dikeluarkan, ini bermakna anda kini boleh menyambung ke pangkalan data MySQL melalui PHP. Jika ujian gagal, sila semak langkah di atas dan cari masalahnya sekali lagi.

Ringkasan:

Di atas adalah penyelesaian kepada masalah MySQL tidak dapat menyambung ke PHP dalam CentOS 7. Saya harap ia dapat memberikan bantuan kepada pelajar yang memerlukan. Jika anda mempunyai soalan lain, sila tinggalkan mesej untuk berbincang.

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah yang MySQL tidak dapat menyambung ke PHP dalam CentOS7. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn