Rumah >pangkalan data >tutorial mysql >Mengapa Saya Mendapat \'Kebenaran Ditolak\' Apabila Menyambung ke MySQL daripada Localhost?

Mengapa Saya Mendapat \'Kebenaran Ditolak\' Apabila Menyambung ke MySQL daripada Localhost?

DDD
DDDasal
2024-11-02 16:54:29889semak imbas

Why Am I Getting

Tidak Dapat Menyambung ke MySQL: Kebenaran Ditolak

Apabila cuba menyambung ke pangkalan data MySQL menggunakan PHP, ralat mungkin timbul yang menunjukkan "Kebenaran dinafikan." Ralat ini boleh berlaku sama ada pada baris arahan atau apabila mengakses skrip melalui pelayan web, seperti localhost.

Khususnya, apabila cuba menyambung ke pangkalan data daripada localhost menggunakan skrip berikut:

<code class="php">$host = '155.30.136.20';
$user = 'abc_user';
$pass = 'xxxxxxxxx';
$dbname = 'welcome';
$link = mysqli_connect($host, $user, $pass,$dbname);

// Connection checks and error handling omitted for brevity</code>

Ralat "Ralat: Tidak dapat menyambung ke MySQL. Ralat penyahpepijatan: 2002 Ralat penyahpepijatan: Kebenaran ditolak" mungkin muncul. Ralat ini menunjukkan bahawa pengguna tidak mempunyai kebenaran yang diperlukan untuk mewujudkan sambungan ke pangkalan data.

Sebab percanggahan ini antara baris arahan dan pelaksanaan localhost mungkin berkaitan dengan dasar keselamatan SELinux. Secara lalai, dasar httpd_can_network_connect_db dilumpuhkan, menghalang pelayan web daripada menyambung ke pangkalan data jauh.

Untuk menyelesaikan isu ini, ikut langkah berikut:

  1. Semak status SELinux dengan menjalankan getsebool -a | grep httpd.
  2. Jika httpd_can_network_connect_db "Dimatikan", dayakannya dengan menjalankan setsebool -P httpd_can_network_connect_db 1.

Selepas membuat perubahan ini, pelayan web seharusnya dapat mewujudkan sambungan ke pangkalan data tanpa menghadapi ralat "Kebenaran ditolak".

Atas ialah kandungan terperinci Mengapa Saya Mendapat \'Kebenaran Ditolak\' Apabila Menyambung ke MySQL daripada Localhost?. 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