Terhubung ke database heroku dengan pgadmin

181

Saya ingin mengelola database heroku saya dengan pgadminklien. Sekarang, saya sudah melakukan ini dengan psql. Ketika saya menggunakan data dari heroku pg:credentialsuntuk menghubungkan menggunakan de DB pgadmin, saya mendapatkan:

Sebuah kesalahan telah terjadi:

Kesalahan saat menyambung ke server: FATAL: izin ditolak untuk database "postgres". RINCIAN: Pengguna tidak memiliki hak istimewa CONNECT.

Ada panduan tentang cara mencapai koneksi?

Tomas Romero
sumber
1
Terima kasih telah mengajukan pertanyaan ini, saya hanya tidak tahu bahwa itu mungkin
Lambat Harry

Jawaban:

327

Buka "Properties" dari server Heroku di pgAdminIII dan ubah nilai "Maintenance DB" menjadi nama database yang ingin Anda sambungkan.

pgAdmin III - Registrasi Server Baru

Pengaturan default cocok untuk DBAs et al yang dapat terhubung ke database di server, tetapi tampaknya itu tidak benar dalam kasus Anda.

araqnid
sumber
9
Seperti yang disarankan dalam jawaban lain , Anda harus mengaktifkan SSL dengan memilih "SSL | SSL | wajib" dalam dialog koneksi juga, atau kalau tidak itu masih akan gagal terhubung.
Brad Parks
jika Anda memiliki Rails App, Anda dapat mengakses DB menggunakan github.com/igorkasyanchuk/rails_db
Igor Kasyanchuk
Saya mendapatkan error pada pgadmin 3 bahwa server yang Anda coba sambungkan tidak antara 8,4 dan 9,3 dan itu menghubungkan tetapi menampilkan daftar 159 database dengan popup kesalahan sepanjang waktu.
Abhishek
3
Ini berhenti bekerja untukku? Apakah masih bekerja untuk siapa pun?
Rune Jeppesen
@Ced ya saya juga sekarang - Windows telah memutuskan untuk menghidupkan firewall saya dan memblokir port itu: - /
Rune Jeppesen
102

Setelah Anda mengubah nama Pemeliharaan DB seperti yang disarankan oleh jawaban araqnid di atas , Anda juga harus menambahkan basis data Anda ke bidang pembatasan DB karena tanpa ini Anda akan melihat ribuan database dan Anda mungkin tidak dapat menemukan milik Anda dalam daftar jika daftar tersebut adalah terlalu panjang.

Lebih detail di sini - Cara menyembunyikan basis data yang tidak dapat saya akses

cm12
sumber
5
+1 dan ketika menambahkan nama db, pastikan untuk mengutipnya dalam tanda kutip tunggal karena akan digunakan untuk menghasilkan INklausa secara dinamis untuk memfilter daftar db.
Glenn
20

Kami memerlukan SSL untuk koneksi di luar heroku. Harap verifikasi apakah Anda memaksa SSL di klien Anda.

Edit:

Dijawab lebih teliti di sini: /dba/21869/connecting-pgadmin3-to-postgres-on-heroku

Kami tidak mengizinkan koneksi ke postgresdatabase, jadi pastikan untuk mengatur DB Pemeliharaan ke nama database Anda, dan pastikan untuk menggunakan SSL.

Semoga semoga cukup.

hgmnz
sumber
2
Apakah saya memerlukan segala jenis file / kunci untuk memaksa SSL? (permisi atas ketidaktahuan)
Tomas Romero
biasanya antarmuka grafis memiliki kotak centang SSL di suatu tempat. Saya tidak menggunakan pgadmin, tetapi berdasarkan pada dokumen [1] sepertinya ada tab SSL dalam dialog konfigurasi koneksi. [1] pgadmin.org/docs/dev/connect.html
hgmnz
Ketika saya mengklik tab SSL, itu meminta saya untuk sertifikat dan kunci, dan saya tidak tahu nilai untuk mereka. Meskipun, beli pengaturan DB nama pemeliharaan untuk nama DB heroku saya, saya bisa menghubungkan hanya mengkonfigurasi tab 'Properti', tanpa harus menentukan apa-apa tentang SSL (ini dilakukan tampaknya secara otomatis)
Tomas Romero
10

Ubah Database Pemeliharaan ke nama Database Anda, mis. Dva70000p0090. Ini seharusnya bekerja.

ravi
sumber