Untuk anda yang menggunakan service Heroku, berikut ini adalah cara mudah untuk mengakses database di Heroku dengan menggunakan database client DBeaver. DBeaver adalah salah satu database client gratis yang support berbagai macam database, MySQL, MariaDB, PostgreSQL, Firebird, Oracle dan lain-lain.
0. Database Credentials
Langkah pertama adalah mengetahui setting username, password dan lain-lain (credentials) dari resource database yang anda gunakan di Heroku.
Buka aplikasi/project anda di Heroku, lalu klik langsung pada addon database yang anda gunakan, atau klik pada tab Resources terlebih dahulu. Pada contoh ini saya menggunakan PostgreSQL.
Pada halaman resource database di atas, klik tab Settings lalu pada halaman Settings tersebut, klik tombol View Credentials
Detail Database Resource |
Show detail Credentials database |
Setting Credentials inilah yang diperlukan untuk melakukan koneksi, olah karena itu pastikan anda menyimpannya dengan aman.
Data Credentials database di Heroku |
1. Setting koneksi di DBeaver
Setelah anda mendapatkan setting credential dari aplikasi di Heroku, maka selanjutnya kita buat koneksi baru pada DBeaver dengan menggunakan data di atas.Pastikan anda memilih tipe database yang sesuai. Untuk contoh ini, maka kita pilih PostgreSQL. Lalu tekan next
Pastikan anda memilih jenis database yang sesuai |
Selanjutnya masukkan data-data Host, Port, Database, User dan Password dengan menggunakan data Credentials dari Heroku di atas.
Pastikan juga anda tidak men-centang pilihan Show non-default databases. Hal ini untuk menghindari database-database non default (bukan milik anda) untuk tampil pada daftar.
Pastikan juga anda tidak men-centang pilihan Show non-default databases. Hal ini untuk menghindari database-database non default (bukan milik anda) untuk tampil pada daftar.
Setting SSL |
Koneksi berhasil |
Catatan untuk database PostgreSQL
Jika anda tidak mengaktifkan setting SSL, meskipun anda memasukkan semua data credentials dengan benar, maka anda akan tetap gagal melakukan koneksi karena IP anda diblok dari pg_hba. Di bawah ini adalah contoh pesan errornya.
Error pada Postgresql dikarenakan SSL off |
FATAL: no pg_hba.conf entry for host "...", user "...", database "...", SSL off
Setelah tes berhasil, tekan tombol next. Berikan nama koneksi jika perlu, lalu tekan tombol Finish.
Finishing koneksi |
Contoh koneksi ke database di Heroku |
Berdasarkan informasi yang tertera pada Heroku, setting Credentials dari resource database seperti contoh di atas tidak permanen. Artinya setiap rentang waktu tertentu, credentials akan di reset dan di generate ulang. Oleh karena itu, jika kelak koneksi anda gagal, maka jangan panik, cukup ganti setting Host, Database dan lain-lain sesuai dengan credentials yang baru.
Sekian, selamat mencoba dan semoga yang sedikit ini bermanfaat.