Postando isso caso ajude alguém:
Eu estava tendo esse mesmo problema que o OP após uma reinicialização forçada quando meu laptop travou. O que me ajudou foi executar o seguinte comando para ver qual PID estava associado ao postmaster.pid:
cat /usr/local/var/postgres/postmaster.pid
O primeiro número que aparece será o PID. Olhando no Activity Monitor, pude ver que o Postgres estava rodando, mas sem um número PID que correspondesse ao mostrado.
Em vez das etapas descritas na resposta mencionada no Superusuário, reiniciei meu laptop corretamente e abri o Terminal e executei
brew services restart postgresql
Isso funcionou sem ter que remover postmaster.pid, que eu vi alguns outros posts recomendam. Às vezes, são as soluções simples que funcionam.