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:
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!