Mengaktifkan akses remote database MySQL
Kalau biasanya kita mengelola database MySQL dari localhost dalam VPS lewat SSH maka ada kalanya kita perlu mengaksesnya dari luar server, istilahnya remote access. Mungkin diperlukan untuk sekedar mengakses MySQL dari lokasi yang terpercaya atau memang VPS tadi adalah didedikasikan sebagai database server. Apapun alasan anda caranya sama kok.
Langsung saja ya, pertama kita perlu mengedit file konfigurasi MySQL. Jadi jalankan perintah berikut:
nano /etc/mysql/my.cnf
Geser kebawah sampai anda menemukan bagian
[mysqld]
dan hilangkan simbol komentar (#
) di awal kode – kode dibawah:bind-address = 127.0.0.1
bind-address = 192.168.8.18
Dimana baris pertama adalah setting agar kita bisa masuk ke MySQL dari localhost dan baris kedua menentukan alamat IP servernya.
Setelah itu mari kita berikan hak akses user MySQL agar bisa terhubung dari luar VPSnya:
GRANT ALL PRIVILEGES ON *.* TO 'nama_user'@'%' IDENTIFIED BY 'kata_sandi' WITH GRANT OPTION;
Saya jelaskan dulu beberapa bagian:
nama_user
merupakan username MySQL yang anda ingin gunakan untuk remote access databasenya.%
fungsinya sebagai wildcard, jadi semua alamat IP yang berusaha tersambung akan diijinkan. Ini sebenarnya tidak aman, saya anjurkan kalau anda memiliki alamat IP statis ganti ke alamat IP anda.kata_sandi
pastinya adalah password user diatas.
Setelah itu restart MySQL
service mysql restart
Anda bisa mencoba membuka koneksi ke VPS tersebut dengan eksekusi perintah berikut:
mysql -u nama_user -h 192.168.8.18 -p
Kalau gagal harap anda cek setting firewall di VPS asal dan VPS tujuan, kadang diblokir port default MySQL (
3306
) kalau tidak dikenali dalam aturannya.
Selesai. Semoga bermanfaat.
Setting user fendi akses remote
root@PRD-ITOP:~# mysql -v -u root -pEnter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 40
Server version: 5.5.62-0ubuntu0.14.04.1 (Ubuntu)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Reading history-file /root/.mysql_history
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> grant select on dbitop_yg.* to 'fendy'@'%' identified by '129djk21';
mysql> quit;
Writing history-file /root/.mysql_history
Bye
root@PRD-ITOP:~# service mysql restart
Tidak ada komentar:
Posting Komentar