Setting Koneksi Database MySQL PHPCloud Dengan PHPStorm 3.0 Via Tunneling SSH

mysql php cloudPHPCloud menggunakan MySQL sebagai database yang melengkapi platform cloud computing mereka. Koneksi database MySQL dari sisi client dapat dilakukan dalam berbagai cara yaitu dengan command line, PhpMyAdmin yang disediakan oleh PHPCloud, MySQL Workbench kalau anda punya ataupun langsung dengan IDE favorit anda asalkan support koneksi ke database MySQL.

Setup Tunneling SSH

PHPCloud memakai sistem tunneling ssh untuk koneksi ke database sehingga diperlukan file key yang valid untuk bisa akses ke server PHPCloud ( lihat post sebelumnya Sinkronisasi Aplikasi PHPcloud dengan PHPStorm ). Gambar berikut ini diambil langsung dari dokumentasi PHPcloud.com

tunneling ssh

Menurut dokumentasi mereka sementara ini hanya ada dua layanan yang bisa diakses melalui tunneling SSH yaitu

  • Akses database MySQL
  • Remote Debugging

Untuk mengaktifkan tunneling SSH buat file config di dalam folder ssh

$ touch ~/.ssh/config

dan isi file config dengan properti-properti sebagai berikut

1
2
3
4
5
6
7
8
9
10
11
12
Host projectx-tunnel
    User <CONTAINERNAME>
    Hostname <CONTAINERNAME>.my.phpcloud.com
    IdentityFile ~/.ssh/id_rsa.pub
    HostKeyAlias proxytunnel.my.phpcloud.com
    ProxyCommand corkscrew %h 21653 %h %p
    # required for Zend Studio debugging
    RemoteForward 10137 127.0.0.1:10137
    # required for MySQL remote connectivity, 
    # change the local port 13306 if needed
    LocalForward 13306 <CONTAINERNAME>-db.projectx.zend.com:3306
    ExitOnForwardFailure yes

Catatan: Tunneling ssh diatas memerlukan paket corkscrew, install melalui yum

# yum install corkscrew

Pastikan <CONTAINERNAME> merupakan container PHPCloud dimana anda akan mengakses database MySQL karena tiap container mempunyai MySQL instance yang berbeda. Diasumsikan bahwa anda memakai file key id_rsa.pub di folder ~/.ssh kalau memakai file key ditempat lain, disesuaikan saja ok.

Langkah berikutnya untuk menjalankan tunneling melalui ssh jalankan perintah berikut di shell

$ ssh projectx-tunnel

Test Koneksi Database MySQL

Kalau tidak ada masalah, koneksi ke database MySQL bisa di test dengan MySQL Client. Ketik perintah berikut pada command shell

$ mysql -u <CONTAINERNAME> -h 127.0.0.1 -P 13306 -p <CONTAINERNAME>

Perhatikan pada perintah diatas host MySQL bukanlah di domain PHPCloud, tetapi di 127.0.0.1 alias localhost! dan port MySQL tidak pada port standar 3306 tetapi 13306!. Kalau ingin memakai port selain 13306, ubah properti LocalForward pada file config di baris 11.

Koneksi Database MySQL Di PHPStorm

Kalau tidak ada error pada test koneksi melalui MySQL Client di command shell maka setting koneksi database di PHPStorm mudah saja. Klik menu Tools → Data sources.. kemudian akan muncul wizard Data Source Properties. Isikan properties seperti screenshot dibawah ini dan jangan lupa untuk mengubah letak driver java untuk mysql, username dan test koneksi dengan menekan tombol Test Connection.
setting database mysql phpcloud di phpstorm

EMAIL NEWSLETTER

You don't have to check this blog regularly...just sign-up and any post will be send directly to your email ;)

  • Pingback: Debugging Aplikasi PHPCloud Dengan PHPStorm 3 — JunWatu

  • http://koole.web.id/ NanoG6

    pake SSH tunneling gitu apa ngga bikin latency lebih gede ya?
    blognya bagus bro, salam kenal ;)

    • equan_pr

      Ya itu untuk development aja dan PHPCloud juga cuman nyedian koneksi client ke MySQL melalui tunneling SSH. Ok trims bro! …