/etc/services
sadece tavsiye niteliğindedir, iyi bilinen bağlantı noktalarının bir listesidir. Bu, o bağlantı noktasında gerçekten herhangi bir şeyin çalıştığı veya adlandırılmış hizmetin o bağlantı noktasında çalışacağı anlamına gelmez.
PostgreSQL durumunda, eğer varsa, 5432 numaralı bağlantı noktasını kullanmak normaldir. Değilse, çoğu yükleyici bir sonraki ücretsiz bağlantı noktasını, genellikle 5433'ü seçecektir.
netstat
Aracı kullanarak gerçekte neyin çalıştığını görebilirsiniz (OS X, Windows ve Linux'ta mevcuttur, komut satırı sözdizimi üçü arasında değişiklik gösterir).
Bu, Mac OS X sistemlerinde, farklı PostgreSQL paketlerinin korkunç karmaşası nedeniyle daha da karmaşık hale geliyor - Apple'ın OS'de yerleşik olan eski PostgreSQL sürümü, Postgres.app, Homebrew, Macports, EnterpriseDB yükleyici vb.
Sonuçta, kullanıcının Pg'yi kurması ve bir sunucuyu tek bir paketten başlatması, ancak psql
ve libpq
istemcisini farklı bir paketten kullanmasıdır. Tipik olarak bu, Postgres.app veya homebrew Pg çalıştırdıklarında psql
ve işletim sistemi ile birlikte gelenlere bağlanırken meydana gelir . Bunların bazen farklı varsayılan bağlantı noktaları olmasının yanı sıra, Mac OS X ile birlikte gönderilen Pg'nin farklı bir varsayılan unix soket yolu vardır , bu nedenle sunucu aynı bağlantı noktasında çalışıyor olsa bile aynı unix soketini dinlemeyecektir.
Çoğu Mac kullanıcısı, yalnızca tcp / ip kullanarak bu sorunu çözer psql -h localhost
. Ayrıca gerekirse bir bağlantı noktası da belirtebilirsiniz, örn psql -h localhost -p 5433
. Birden fazla PostgreSQL örneğiniz çalışıyor olabilir, bu nedenle select version()
ve kullanarak doğru olana bağlandığınızdan emin olun SHOW data_directory;
.
Ayrıca bir unix soket dizini de belirtebilirsiniz; unix_socket_directories
Bağlanmak istediğiniz PostgreSQL örneğinin ayarını kontrol edin ve bunu ile belirtin psql -h
, örn psql -h /tmp
.
Bir temizlikçi çözüm sisteminizi düzeltmektir PATH
böylece psql
ve libpq
aslında çalışan PostgreSQL ile ilişkili ilk bulunanlarla ilgili olduğunu PATH
. Bunun ayrıntıları, Mac OS X sürümünüze ve hangi Pg paketlerini kurduğunuza bağlıdır. Mac kullanmıyorum ve şu anda mevcut olandan daha fazla zaman harcamadan o tarafta daha fazla ayrıntı sunamıyorum.
PGPORT
tanımlanıp tanımlanmadığını kontrol edin : postgresql.org/docs/current/static/libpq-envars.html