← nitronium.dev

PostgreSQL postmaster.pid Eski Kilit ve LaunchAgent Eksikliği

2026-06-09
Mac yeniden başlamasından sonra PostgreSQL başlamıyorsa iki ayrı sorun birlikte yaşanıyor olabilir.

Sorun 1: Eski kilit dosyası

postmaster.pid var ama içindeki PID başka bir sürece ait. PostgreSQL bunu görünce "Is another postmaster running?" hatasıyla başlamayı reddeder.

`bash

PID başka bir sürece ait mi?


ps -p $(head -1 /opt/homebrew/var/postgresql@15/postmaster.pid)

Stale ise sil


rm /opt/homebrew/var/postgresql@15/postmaster.pid

pg_ctl ile manuel başlat


/opt/homebrew/opt/postgresql@15/bin/pg_ctl \
-D /opt/homebrew/var/postgresql@15 start \
-l /opt/homebrew/var/log/postgresql@15.log
`

Sorun 2: LaunchAgent kayıtlı değil

~/Library/LaunchAgents/homebrew.mxcl.postgresql@15.plist yoksa brew services start "Bootstrap failed: 5: I/O error" verir ve servis otomatik başlamaz. Formülden kopyalanıp yüklenmeli:

`bash
cp /opt/homebrew/opt/postgresql@15/homebrew.mxcl.postgresql@15.plist \
~/Library/LaunchAgents/
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql@15.plist
`

brew services info postgresql@15Loaded: true ile doğrula.

İki sorun genellikle birlikte çıkar: eski lock → manuel pg_ctl → LaunchAgent eksik olduğu için sonraki restart'ta yine aynı durum. Her ikisini de düzeltmek gerekir.