Mengakses Database VPS dari Luar

Ketika pertama di-install, database MySQL atau MariaDB defaultnya tidak bisa diakses dari luar. Daemon MySQL hanya akan listening pada localhost (127.0.0.1), jadi tidak bisa diakses dari luar server.

Agar database tersebut dapat diakses dari luar server anda perlu merubah sedikit konfigurasi pada database tersebut.

Konfigurasi

Pada artikel ini saya menggunakan mariadb, jika anda menggunakan mysql lokasi file konfigurasinya juda beradai di dekat sana. MariaDB merupakan versi fork dari MySQL, konfigurasi yang dimiliki untuk kedua database ini tidak berbeda jauh.

nano /etc/mysql/mariadb.conf.d/50-server.cnf 

kemdian cari opsi bind-address, dan ubah valunya menjadi seperti dibawah ini:

bind-address = 0.0.0.0

0.0.0.0 akan membuat daemon mysql listen pada semua interface sehingga dapat diakses dari luar server. Anda dapat mengubah value tersebut jika ingin mysql hanya listen pada alamat ip tertentu saja.

simpan file tersebut kemudian restart mysqlnya

systemctl restart mysql 

Pastikan juga port 3306 tidak diblok oleh firewall. Untuk mengujinya anda dapat menggunakan perintah telnet:

telnet <ipserver> 3306

User Untuk Remote

Selain mengubah konfigurasi mysql, untuk dapat mengakses database anda juga perlu permission atau menggunakan user yang tepat. Pastikan User yang anda gunakan hostnya bukan localhost.

Untuk membuat user yang dapat diakses dari mana saja via command line:

CREATE USER 'remoteuser'@'%' IDENTIFIED BY 'passworduser';

% merupakan wildcard yang berarti user tersebut dapat diakses dari host mana saja.

kemudian grant permission ke database untuk user tersebut

GRANT ALL PRIVILEGES ON namadatabase . * TO 'remoteuser'@'%';

terakhir lakukan flush privileges agar permission terupdate

FLUSH PRIVILEGES;

kemudian coba akses.

Kadek Jayak
Seorang Web Developer di Denpasar Bali. Nulis blog hanya sekedar iseng dan berbagi pengalaman.
%d blogger menyukai ini: