/etc/services
hanya saran, ini adalah daftar port yang terkenal. Itu tidak berarti bahwa apa pun benar-benar berjalan pada port itu atau bahwa layanan yang disebutkan akan berjalan pada port itu.
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 bervariasi di ketiga).
Ini lebih rumit pada sistem Mac OS X oleh kekacauan mengerikan dari paket PostgreSQL yang berbeda - versi kuno PostgreSQL Apple yang terintegrasi dengan OS, Postgres.app, Homebrew, Macports, pemasang 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 Pg homebrew dan menghubungkan dengan psql
yang dikirimkan dengan OS. Tidak hanya ini kadang-kadang memiliki port default yang berbeda, tetapi Pg yang dikirimkan dengan Mac OS X memiliki jalur soket unix default yang berbeda , sehingga bahkan jika server berjalan pada port yang sama, itu tidak akan mendengarkan soket unix yang sama.
Sebagian besar pengguna Mac mengatasi ini dengan hanya menggunakan tcp / ip with psql -h localhost
. Anda juga dapat menentukan porta jika diperlukan, mis psql -h localhost -p 5433
. Anda mungkin memiliki beberapa instance PostgreSQL berjalan jadi pastikan Anda terhubung ke 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
, misalnya psql -h /tmp
.
Solusi yang lebih bersih adalah memperbaiki sistem Anda PATH
sehingga psql
dan libpq
terkait dengan PostgreSQL yang Anda jalankan sebenarnya adalah yang pertama ditemukan di Internet PATH
. Rinciannya tergantung pada versi Mac OS X Anda dan paket Pg mana yang telah Anda instal. Saya tidak menggunakan Mac dan tidak bisa menawarkan lebih banyak detail di sisi itu tanpa menghabiskan lebih banyak waktu daripada yang tersedia saat ini.
PGPORT
didefinisikan: postgresql.org/docs/current/static/libpq-envars.html