Kapan Anda Butuh Akses Jarak Jauh

Akses jarak jauh memungkinkan Anda menyambung ke basis data MySQL dari:

  • Lingkungan pengembangan lokal (XAMPP, MAMP, Docker)
  • Perkakas basis data desktop (MySQL Workbench, DBeaver, Sequel Pro)
  • Server lain atau aplikasi awan
  • Skrip otomatis dan perkakas pencadangan
Catatan keamanan: akses MySQL jarak jauh membuka risiko keamanan. Aktifkan hanya bila perlu dan selalu pakai kata sandi yang kuat.

Mengaktifkan Akses Jarak Jauh

Langkah 1: Tambahkan host jarak jauh

  1. Masuk ke EGPNL
  2. Buka Basis DataMySQL Jarak Jauh
  3. Masukkan alamat IP atau nama host Anda
  4. Klik Tambah Host
Temukan IP Anda: kunjungi whatismyipaddress.com untuk mengetahui IP publik Anda saat ini.

Langkah 2: Atur pengguna basis data

Pastikan pengguna basis data Anda punya izin yang benar:

  1. Buka Basis Data MySQL
  2. Periksa bahwa pengguna Anda punya Semua Hak
  3. Atau buat pengguna khusus untuk akses jarak jauh

Pengaturan Koneksi

Pengaturan Nilai
Nama host IP server Anda atau yourdomain.com
Port 3306 (port bawaan MySQL)
Basis data your_database_name
Nama pengguna your_database_user
Kata sandi your_database_password

Menyambung dengan MySQL Workbench

  1. Buka MySQL Workbench
  2. Klik + untuk menambah koneksi baru
  3. Masukkan nama koneksinya
  4. Isi Hostname dengan alamat server Anda
  5. Isi Port dengan 3306
  6. Masukkan nama penggunanya
  7. Klik Store in Vault untuk kata sandinya
  8. Klik Test Connection
  9. Klik OK untuk menyimpan

Menyambung lewat Baris Perintah

# Basic connection
mysql -h your-server.com -P 3306 -u username -p database_name

# Example
mysql -h server.egphp.com -P 3306 -u mysite_user -p mysite_db

Menyambung dengan PHP (aplikasi jarak jauh)

<?php
$host = 'your-server.com';  // Remote server hostname
$port = 3306;
$database = 'your_database';
$username = 'your_user';
$password = 'your_password';

// PDO Connection
try {
    $pdo = new PDO(
        "mysql:host=$host;port=$port;dbname=$database;charset=utf8mb4",
        $username,
        $password,
        [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]
    );
    echo "Connected successfully!";
} catch (PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}
?>

Mengizinkan Semua Host (joker)

Untuk mengizinkan koneksi dari alamat IP mana pun:

  1. Buka MySQL Jarak Jauh di EGPNL
  2. Masukkan % sebagai hostnya
  3. Klik Tambah Host
Tidak disarankan: mengizinkan semua host (%) adalah risiko keamanan. Pakai hanya untuk pengujian lalu hapus. Gunakan IP tertentu bila memungkinkan.

Terowongan SSH (paling aman)

Demi keamanan maksimal, sambunglah lewat terowongan SSH:

Terowongan SSH lewat baris perintah

# Create tunnel
ssh -L 3307:localhost:3306 user@your-server.com

# In another terminal, connect via tunnel
mysql -h 127.0.0.1 -P 3307 -u dbuser -p database_name

SSH di MySQL Workbench

  1. Buat koneksi baru
  2. Metode koneksi: Standard TCP/IP over SSH
  3. SSH Hostname: your-server.com
  4. SSH Username: pengguna SSH Anda
  5. SSH Key File: kunci privat Anda (opsional)
  6. MySQL Hostname: localhost (atau 127.0.0.1)
  7. Masukkan kredensial basis datanya
Mengapa terowongan SSH? Terowongan SSH mengenkripsi seluruh trafik dan tak menuntut port MySQL 3306 dibuka ke internet.

Mengatasi Masalah

Koneksi Ditolak

  • Pastikan IP Anda sudah ditambahkan di MySQL Jarak Jauh
  • Periksa apakah IP Anda berubah (IP dinamis)
  • Pastikan port 3306 terbuka di firewall Anda

Akses Ditolak

  • Periksa nama pengguna dan kata sandinya
  • Pastikan penggunanya punya hak akses jarak jauh
  • Pastikan nama basis datanya benar

Kesalahan Waktu Habis

  • Periksa apakah jaringan atau firewall memblokir port 3306
  • Coba pakai terowongan SSH sebagai gantinya
  • Pastikan servernya menerima koneksi

Mencabut Akses Jarak Jauh

Ketika Anda tak lagi butuh akses jarak jauh:

  1. Buka MySQL Jarak Jauh di EGPNL
  2. Cari entri IP atau hostnya
  3. Klik Hapus