• Membuat Remote Access untuk MySQL Database Server via Port 3306

    Sangat terasa berbeda saat akan melakukan remote akses ke MySQL server disaat saya menggunakan windows XP dan sekarang menggunakan server CentOS. Saat di Windows XP, remote access dapat langsung dilakukan apabila tau IP MySQL database server dan firewall yang ada di Windows XP dimatikan, tinggal connect, semuanya berjalan dengan normal dan mudah. Namun beda halnya saat saya akan membuat remote access untuk MySQL database server yang ada di CentOS server.

    Sebelum bisa connect, maka harus ada sedikit setting yang dilakukan. Langkah-langkah yang harus dilakukan remote access untuk MySQL database server di CentOS server adalah sebagai berikut :

    1. Login ke server anda, biasanya via SSH

    Untuk login ke server via SSH, bisa menggunakan putty ataupun software sejenis seperti bitvise tunnelier.

     

    2. Edit my.cnf File

    • Jika anda menggunakan Debian Linux file ada di /etc/mysql/my.cnf
    • Jika anda menggunakan Red Hat Linux/Fedora/Centos Linux file ada di at /etc/my.cnf
    • Jika anda menggunakan FreeBSD anda harus membuat sendiri file /var/db/mysql/my.cnf

    Setting standarnya adalah sebagai berikut:

    [mysqld]
    datadir = /var/lib/mysql
    socket = /var/lib/mysql/mysql.sock
    user=mysql

    Agar bisa diremote, maka ditambahkan baris dibawah ini:

    bind-address= IP server anda
    #skip-networking

    Jadi setelah digabung contohnya menjadi seperti ini:

    [mysqld]
    datadir = /var/lib/mysql
    socket = /var/lib/mysql/mysql.sock
    user=mysql
    bind-address=173.224.215.123
    #skip-networking

    Setelah itu save file my.cnf dan restart mysql anda

    [root@bantul ~]# service mysqld restart  << restart MySQL


    3. Buat user yang bisa digunakan untuk dilakukan remote access

    [root@bantul ~]# mysql -u root -p    << Login ke mysq anda dan masukkan password root anda
     

    mysql> create user 'coba' identified by 'anjar';  << Membuat user 'coba' dan passwordnya 'anjar'

     mysql> grant all privileges on *.* to 'coba' with grant option; << Memperbolehkan semua hak akses.

    mysql> exit  << Keluar dari MySQL

    [root@bantul ~]# service mysqld restart  << Restart MySQL


    4. Buka Port 3306 (MySQL Database Server)

    Untuk bisa diakses dari luar, port 3306 harus dibuka, karena secara default firewall linux akan menutup semua port, kecuali yang diperbolehkan oleh IPTABLES. Untuk membuka port 3306, maka kita akan memasukkan beberapa baris konfigurasi ke IPTABLES. Caranya adalah sebagai berikut:

    [root@bantul ~]# /sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT  << Memasukkan konfigurasi

    [root@bantul ~]# service iptables save  << Menyimpan konfigurasi

    [root@bantul ~]# service iptables restart  << Restart iptables

     

    5. Mari kita coba hasilnya melalui CMD di client (windows)

    H:\xampp\mysql\bin>mysql -u coba -h 173.224.215.123 -p  << Login ke MySQL server lewat komputer client (Windows)

    dan akan muncul tampilan seperti ini, jika keluar tulisan seperti itu, berarti anda sudah berhasil meremote database anda.

     

    6. Sekian

    Setelah bisa login seperti tampilan diatas, berarti anda sudah berhasil melakukan remote access ke server MySQL anda. Tahap lanjutannya adalah memberikan permission yang sesuai untuk setiap user yang anda gunakan. Misalnya user A hanya bisa mengakses database 1, user B hanya bisa mengakses database 2. Semoga bermanfaat

    Share/Save

    Comments

    Add new comment

    Plain text

    • No HTML tags allowed.
    • Web page addresses and e-mail addresses turn into links automatically.
    • Lines and paragraphs break automatically.
    Type the characters you see in this picture. (verify using audio)
    Type the characters you see in the picture above; if you can't read them, submit the form and a new image will be generated. Not case sensitive.