Rumah >pembangunan bahagian belakang >masalah PHP >php7 tidak boleh menyambung ke mysq

php7 tidak boleh menyambung ke mysq

王林
王林asal
2023-05-07 09:46:06768semak imbas

Penyelesaian kepada masalah yang PHP7 tidak dapat disambungkan ke pangkalan data MySQL

Bahasa PHP ialah salah satu bahasa pengaturcaraan bahagian pelayan yang paling banyak digunakan, dan MySQL ialah sistem pengurusan pangkalan data hubungan yang sangat popular. Semasa pembangunan PHP, kami sering menggunakan MySQL untuk menyimpan dan mengurus data. Walau bagaimanapun, kadangkala apabila menggunakan versi PHP7 untuk menyambung ke MySQL, pangkalan data tidak boleh disambungkan. Jadi bagaimana untuk menyelesaikannya? Artikel ini akan memperkenalkan kepada anda penyelesaian kepada masalah yang PHP7 tidak dapat menyambung ke pangkalan data MySQL.

  1. Semak sama ada pemacu MySQL telah dipasang

PHP7 adalah berbeza daripada versi sebelumnya ia tidak mempunyai sambungan MySQL yang dipasang secara lalai dan perlu dipasang secara manual. Oleh itu, langkah pertama adalah untuk menyemak sama ada pemacu MySQL dipasang pada sistem. Anda boleh menggunakan arahan berikut dalam terminal untuk menyemak:

php -m | grep mysql

Jika tiada output, ini bermakna pemacu MySQL tidak dipasang pada sistem. Anda boleh menggunakan arahan berikut untuk memasang:

sudo apt-get install php7.0-mysql

Selepas pemasangan selesai, anda boleh menggunakan arahan di atas dalam terminal untuk menyemak semula sama ada pemasangan berjaya.

  1. Tukar fail konfigurasi MySQL

Dalam PHP7, kaedah penyulitan lalai MySQL ditukar daripada mysql_native_password asal kepada caching_sha2_password. Oleh itu, pengubahsuaian perlu dibuat semasa menyambung ke MySQL, jika tidak sambungan pangkalan data akan gagal. Anda boleh menambah kandungan berikut pada fail konfigurasi MySQL my.cnf:

[mysqld]
default-authentication-plugin=mysql_native_password

Selepas penambahan selesai, mulakan semula perkhidmatan MySQL untuk berkuat kuasa.

  1. Semak sama ada perkhidmatan MySQL dihidupkan

Apabila menyambung ke pangkalan data, jika perkhidmatan MySQL tidak dihidupkan, sambungan akan gagal. Anda boleh menggunakan arahan berikut untuk menyemak sama ada perkhidmatan didayakan:

sudo service mysql status

Jika perkhidmatan tidak didayakan, anda boleh menggunakan arahan berikut untuk memulakannya:

sudo service mysql start

Jika perkhidmatan didayakan tetapi masih tidak boleh disambungkan, anda boleh cuba lagi mulakan perkhidmatan MySQL:

sudo service mysql restart
  1. Semak sama ada maklumat sambungan pangkalan data adalah betul

Jika tiada kaedah di atas menyelesaikannya. masalahnya, maka anda perlu menyemak sama ada maklumat yang berkaitan tentang penyambungan ke pangkalan data adalah betul. Termasuk nama pengguna, kata laluan, alamat hos, nombor port, dsb. Anda boleh menyemaknya dalam kod php, contoh kod:

$servername = "localhost";
$username = "username";
$password = "password";

// 创建连接
$conn = new mysqli($servername, $username, $password);

// 检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
echo "连接成功";

Pembolehubah $servername dalam kod ialah alamat hos, $username ialah nama pengguna, dan $password ialah kata laluan. Dengan menyemak sama ada maklumat ini betul, anda boleh menentukan sebab anda tidak boleh menyambung ke pangkalan data.

Kesimpulan

Di atas adalah penyelesaian kepada masalah yang PHP7 tidak dapat menyambung ke pangkalan data MySQL. Dengan menyemak pemacu MySQL, menukar fail konfigurasi MySQL, menyemak sama ada perkhidmatan MySQL dihidupkan, dan menyemak sama ada maklumat sambungan pangkalan data adalah betul, anda secara amnya boleh menyelesaikan masalah tidak dapat menyambung ke pangkalan data. Jika tiada kaedah di atas dapat menyelesaikan masalah, maka isu lain perlu dipertimbangkan dan penyelesaian masalah yang lebih terperinci akan diperlukan. Semasa proses pembangunan PHP, jika anda menghadapi masalah selagi anda sabar mencari dan menyelesaikannya, anda boleh menyelesaikan projek itu dengan jayanya.

Atas ialah kandungan terperinci php7 tidak boleh menyambung ke mysq. 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
Artikel sebelumnya:iis5 tidak boleh php $_postArtikel seterusnya:iis5 tidak boleh php $_post