ฉันใช้งานฐานข้อมูล Heroku Postgres ( ฐานข้อมูล ) ร่วมกับแอพ Django เอกสารที่อ้างถึง Add-on อยู่ที่นี่ ฉันคิดว่านี่เป็นคำถามที่คุ้มค่าสำหรับชุมชนเพราะ Heroku แจ้งเตือนผู้ใช้ในวันนี้ว่าจะย้ายข้อมูลทุกอย่างออกจาก Add-on ของฐานข้อมูลที่แชร์ซึ่งเคยเป็นค่าเริ่มต้น
ฉันมีปัญหาในการเชื่อมต่อ pgAdmin3 กับฐานข้อมูล
ตามคำแนะนำในลิงค์ด้านบนฉันคว้าข้อมูลประจำตัวของฐานข้อมูลด้วยคำสั่งต่อไปนี้:
$ heroku pg:credentials HEROKU_POSTGRESQL_OLIVE
ฉันใช้การติดตั้ง Homebrew ของ Postgresql บน Mac OSX
ในระหว่างนี้ฉันมี:
- เปิด SSL ใน pg_postgresql.conf ของฉัน
- เพิ่มการตั้งค่า:
listen_addresses = '*'
- และเพิ่ม
host all all 0.0.0.0/0 md5
- และรีสตาร์ทเซิร์ฟเวอร์ postgres ของฉัน
แล้วผมไป pgAdmin3 File > Add Server
และเลือก
ฉันป้อนข้อมูลรับรองโดย Heroku ดังต่อไปนี้ (ชื่อแรกคือชื่อหนังสือรับรอง Heroku ที่สองคือชื่อฟิลด์ pgAdmin):
ในแท็บ "คุณสมบัติ":
- dbname เป็นชื่อ;
- โฮสต์เข้าสู่โฮสต์;
- พอร์ตเข้าสู่พอร์ต;
- ฉันปล่อยให้ฟิลด์ pgAdmin สำหรับ "ฐานข้อมูลการบำรุงรักษา" ว่างเปล่า;
- ผู้ใช้ในชื่อผู้ใช้;
- รหัสผ่านเป็นรหัสผ่าน;
ในแท็บ SSL:
- ฉันมีช่องสำหรับ SSL ฉันเลือก "ต้องการ" (ตามคำแนะนำของ Heroku)
ฉันกด Enter และ pgAdmin คิดแล้วโยนข้อผิดพลาดดังนี้
An error has occurred:
Error connecting to the server: FATAL: permission denied for database "postgres"
DETAIL: User does not have CONNECT privilege.
ไม่แน่ใจว่าจะทำอย่างไรในจุดนี้ จะขอบคุณพอยน์เตอร์ใด ๆ
The maintenance DB field is used to specify the initial database that pgAdmin connects to, and that will be expected to have the pgAgent schema and adminpack objects installed (both optional). On PostgreSQL 8.1 and above, the maintenance DB is normally called ‘postgres’
- และนั่นคือสิ่งที่ pgAdmin พยายามเชื่อมต่อ ระบุรหัสผ่านของpostgres
ผู้ใช้