Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Kesalahan 2002 Koneksi ditolak pada PHP yang terhubung ke MySQL yang berjalan di MAMP

Masalahnya adalah Anda tidak melewatkan port sebagai parameter kelima ke koneksi mysqli. Jika Anda menggunakan localhost sebagai Host Anda maka parameter port diabaikan. Inilah sebabnya mengapa dalam cuplikan MAMP, mereka tidak melewati $db_port sebagai parameter, itu tidak diperlukan. Alasan ini terjadi, adalah karena localhost tidak menggunakan TCP/IP, melainkan menggunakan soket unix.

Setelah Anda mengikuti saran orang lain, Anda mungkin telah mengubah kode ke titik di mana Anda telah

$db_host = '127.0.0.1';

Tidak apa-apa, tetapi karena Anda tidak lagi menggunakan soket unix (localhost ), parameter port diperlukan untuk membuat koneksi. MySQLi menggunakan 3306 port sebagai default jika Anda tidak menentukan yang lain sebagai parameter kelima. Jadi itu adalah port yang Anda coba sambungkan dengan menggunakan kode itu. Di sinilah Error: Connection refused berasal dari.

Untuk mengatasi masalah ini, Anda hanya perlu melewati port sebagai parameter kelima seperti ini:

$mysqli = new mysqli($db_host,$db_user,$db_password,$db_db,$db_port);

Cuplikan itu sendiri sangat bagus, hanya saja tidak sepenuhnya sesuai dengan kebutuhan Anda dan Anda harus melakukan sedikit penyesuaian padanya. Jika Anda ingin menggunakan cuplikan, Anda harus memahami apa yang mereka lakukan dan dalam hal ini cara kerja mysqli. Pastikan untuk mengingat ini untuk masa depan karena pasti akan menghindari situasi dan kesalahan yang tidak menyenangkan seperti ini.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. KIRI GABUNG setelah GROUP BY?

  2. Konektivitas MySQL dan HBase

  3. Sintaks pencarian teks lengkap MySQL alternatif

  4. Tips untuk Upgrade ke dari MySQL 5.7 ke MySQL 8

  5. Menempelkan SQL ke baris perintah MySQL