in Undefined

Cara Menghubungkan MySQL Laragon di Windows ke WSL

Buat kamu yang develop pakai WSL tapi databasenya jalan di Windows (Laragon), kadang ketemu error:

mysql -h 172.xx.xx.1 -P 3306 -u root -p

Hasilnya:

ERROR 2003 (HY000): Can't connect to MySQL server on '172.xx.xx.1:3306' (110)

Artinya WSL nggak bisa nyambung ke MySQL di Windows. Tenang, solusinya gampang kok ✨


🔧 Step 1 – Buka Port 3306 di Firewall Windows

Buka PowerShell (Run as Administrator) lalu jalankan:

netsh advfirewall firewall add rule name="Allow MySQL 3306" dir=in action=allow protocol=TCP localport=3306

📸 [Screenshot: PowerShell setelah rule ditambahkan]


🔧 Step 2 – Cari IP Windows dari WSL

Di terminal WSL, jalankan:

ip route show | grep default | awk '{print $3}'

Contoh hasil: 172.21.224.1

📸 [Screenshot: output perintah dengan IP Windows]


🔧 Step 3 – Test Koneksi Langsung

Coba connect dari WSL:

mysql -h 172.21.224.1 -P 3306 -u root -p

Kalau berhasil, kamu akan masuk ke prompt MySQL.

📸 [Screenshot: hasil login sukses ke MySQL dari WSL]


🔧 Step 4 – Update Config PHP

Misalnya di config/db.php:

'hostname' => '172.21.224.1',
'port'     => '3306',
'username' => 'root',
'password' => 'root',
'database' => 'db_asik',

📸 [Screenshot: editor code dengan konfigurasi database]


📝 Catatan Penting

  • IP bisa berubah tiap kali restart Windows → cek ulang dengan ip route show.
  • Lebih aman bikin user khusus WSL: CREATE USER 'wsl_user'@'%' IDENTIFIED BY 'passwordku'; GRANT ALL PRIVILEGES ON db_asik.* TO 'wsl_user'@'%'; FLUSH PRIVILEGES;
  • Alternatif: install MySQL langsung di WSL atau pakai Docker biar lebih konsisten.

🎯 Kesimpulan

Kuncinya: buka port 3306 di firewall. Setelah itu, WSL bisa langsung connect ke MySQL Laragon tanpa masalah.

Jadi kalau dapet error Connection timed out, jangan panik dulu — cek firewall dulu ya 🔥

Write a Comment

Comment