mysqli::mysqli() Ralat: Menyambung melalui Soket 'MySQL' Gagal
Apabila cuba mewujudkan sambungan ke pangkalan data MySQL menggunakan Kelas mysqli PHP, ralat "mysqli::mysqli(): (HY000/2002): Tidak dapat menyambung ke pelayan MySQL tempatan melalui soket 'MySQL' (2)" menunjukkan kesukaran dalam mewujudkan sambungan melalui soket domain Unix.
Sebab Ralat Soket
Secara lalai, apabila "localhost" disediakan sebagai hos, MySQL cuba menyambung menggunakan soket domain Unix fail, "MySQL," bukannya TCP/IP. Walau bagaimanapun, jika soket ini tiada atau tidak boleh diakses, sambungan tidak boleh diwujudkan.
Penyelesaian
Untuk menyelesaikan isu ini, pertimbangkan penyelesaian berikut:
Tentukan Soket dalam Skrip: Konfigurasikan soket dalam skrip PHP anda secara langsung menggunakan sintaks berikut:
$db = new MySQLi('localhost', 'kamil', '***', '', 0, '/var/run/mysqld/mysqld.sock')
Konfigurasi Hos untuk Laman web
Jika anda berhasrat untuk menjadikan pangkalan data boleh diakses daripada tapak web anda, anda mungkin perlu mengkonfigurasi hos yang berbeza. Konfigurasi hos bergantung pada persediaan persekitaran pengehosan web anda dan lokasi pelayan MySQL anda. Anda disyorkan untuk berunding dengan penyedia pengehosan anda untuk mendapatkan arahan khusus tentang mengkonfigurasi hos jauh.
Atas ialah kandungan terperinci Mengapa sambungan PHP mysqli saya gagal dengan 'Tidak dapat menyambung ke pelayan MySQL tempatan melalui soket 'MySQL' (2)'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!