/etc/services
hanya penasihat, ini adalah daftar port terkenal. Ini tidak berarti bahwa ada sesuatu yang benar-benar berjalan pada port tersebut atau bahwa layanan bernama akan berjalan pada port tersebut.
Dalam kasus PostgreSQL, biasanya menggunakan port 5432 jika tersedia. Jika tidak, sebagian besar penginstal akan memilih port gratis berikutnya, biasanya 5433.
Anda dapat melihat apa yang sebenarnya berjalan menggunakan netstat
alat (tersedia di OS X, Windows, dan Linux, dengan sintaks baris perintah yang bervariasi di ketiganya).
Ini semakin rumit pada sistem Mac OS X oleh kekacauan mengerikan dari paket PostgreSQL yang berbeda - PostgreSQL versi kuno Apple yang terpasang di OS, Postgres.app, Homebrew, Macports, penginstal EnterpriseDB, dll.
Apa yang akhirnya terjadi adalah bahwa pengguna menginstal Pg dan memulai server dari satu kemasan, tetapi menggunakan psql
dan libpq
klien dari kemasan yang berbeda. Biasanya ini terjadi ketika mereka menjalankan Postgres.app atau homebrew Pg dan terhubung dengan psql
yang dikirimkan dengan OS. Terkadang ini tidak hanya memiliki port default yang berbeda, tetapi Pg yang dikirimkan bersama Mac OS X memiliki jalur soket unix default yang berbeda , jadi meskipun server berjalan pada port yang sama, server tidak akan mendengarkan soket unix yang sama.
Sebagian besar pengguna Mac mengatasi ini hanya dengan menggunakan tcp/ip dengan psql -h localhost
. Anda juga dapat menentukan port jika diperlukan, misalnya psql -h localhost -p 5433
. Anda mungkin menjalankan beberapa instance PostgreSQL, jadi pastikan Anda terhubung ke instance yang benar dengan menggunakan select version()
dan SHOW data_directory;
.
Anda juga dapat menentukan direktori soket unix; periksa unix_socket_directories
pengaturan instance PostgreSQL yang ingin Anda sambungkan dan tentukan dengan psql -h
, mis.psql -h /tmp
.
Solusi yang lebih bersih adalah dengan memperbaiki PATH
sistem Anda sehingga psql
dan libpq
terkait dengan PostgreSQL yang sebenarnya Anda jalankan adalah apa yang ditemukan pertama kali di PATH
. Detailnya tergantung pada versi Mac OS X Anda dan paket Pg mana yang telah Anda instal. Saya tidak menggunakan Mac dan tidak dapat menawarkan lebih banyak detail di sisi itu tanpa menghabiskan lebih banyak waktu daripada yang tersedia saat ini.