Database, Ubuntu Server, Programming

Like Us

Tags

Archive

Thursday, October 08, 2015

Cara Mudah Membuka Akses MySQL Server dari Komputer Lain


Berdasarkan tutorial sebelumnya dimana anda diajarkan cara install server database MySQL, pada kesempatan kali ini saya ingin menuliskan bagaimana cara membuka akses server Database MySQL tersebut agar dapat diakses dari komputer lain. Tetapi tidak ke seluruh komputer lain, hanya satu komputer saja yang saya buka aksesnya berdasarkan alamat IP yang sudah terdaftar sebelumnya demi alasan keamanan. Secara default, MySQL Server hanya akan membuka aksesnya kepada localhost(127.0.0.1) alias komputer dimana aplikasi server database MySQL diinstall. dan pada kasus ini saya ingin membuka hak akses server database MySQL tersebut agar dapat diakses melalui alamat 192.168.0.254 yang notabene masih satu alamat network dengan server database MySQL tersebut yang berada di alamat 192.168.0.252.

*Sebagai informasi, server MySQL yang saya gunakan adalah versi 5.5.

Berikut pesan error yang terlihat apabila kita ingin membangun koneksi ke server MySQL sebelum dibuka aksesnya:


Berdasarkan gambar tersebut terlihat bahwa saya ingin mengakses server database MySQL yang berada pada alamat IP 192.168.0.252, dan hasilnya adalah ditolak. Lalu bagaimana cara membuka aksesnya dari komputer lainnya? Berikut langkah langkahnya:
Silakan masuk ke dalam server MySQL melalui SSH (jika server MySQL yang anda gunakan memakai sistem operasi Linux), jika disini server database mysql saya adalah di alamat 192.168.0.252, setelah berhasil masuk kemudian saya akan membuka file my.cnf dengan perintah:

 sudo vim /etc/mysql/my.cnf

Lalu amati dan ubah bagian:

 bind-address = 127.0.0.1

menjadi

 bind-address = 127.0.0.1
 bind-address = 192.168.0.252

kemudian simpan. Tidak tahu cara menyimpannya? anda bisa belajar melalui tutorial menggunakan vim yang telah saya buat sebelumnya.

Karena anda masih berada di dalam server MySQL, setelah selesai melakukan perubahan tersebut silakan masuk terlebih dahulu ke console server Database MySQL dari localhost dengan perintah:

 mysql -u root -p

kemudian masukkan passwordnya, lalu jalankan perintah:

 use mysql;

untuk memilih database mysql sebagai database yang akan dioperasikan, kemudian jalankan perintah:

UPDATE `mysql`.`user` SET `Host`='192.168.0.254' WHERE `user`.`Host` ='localhost' AND `user`.`User` ='root';

untuk merubah data dalam tabel user dengan kolom Host dari "localhost" ke alamat IP "192.168.0.254" dengan user "root".

Perintah diatas berarti anda memberikan hak akses kepada alamat IP 192.168.0.254 untuk dapat mengakses server database mysql yang terletak di alamat IP 192.168.0.252.

Jika perintah tersebut berhasil dijalankan maka akan muncul hasilnya seperti berikut:
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
Jika benar begitu, silakan keluar dari console server MySQL dengan perintah:

 quit

lalu silakan restart servis server Database MySQL dengan perintah:

 sudo service mysql restart

Setelah itu silakan coba akses server Database MySQL dari dalam localhost terlebih dahulu sebelum dari komputer lain dengan perintah:

 mysql -u root -p

jika berhasil, silakan coba akses dari komputer lain yang beralamat IP 192.168.0.254 sesuai yang tadi dimasukkan ke dalam tabel user di dalam server Database MySQL dengan perintah:

 mysql -h 192.168.0.252 -u root -p

jika berhasil maka anda akan menjumpai prompt console mysql seperti ketika anda login dari localhost server database MySQL seperti gambar di bawah:



Bagaimana, mudah bukan? silakan mencoba dan semoga berhasil. :)


3 comments:

software pulsa said...

Trmksh infonya gan.. sangat membantu saya

Ilham Rhamadan said...

gan kalo ip server ada 2(lokal dan publik) saya coba tambahkan
bind-address = ip lokal
bind-address = ip publik

hasilnya hanya bisa di akses di 1 ip

bagaimana caranya agar bisa di akses dari k 2 ip tersebut gan? tolong di bantu y gan.. tq before..

Himawan Mahardianto said...

Coba bind-address nya di comment saja jadi #bind-address, kemudian service mysql di restart, lalu cek pake nmap