Ao reiniciar o meu Mac, recebi o temido erro do Postgres:
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
A razão pela qual isso aconteceu é porque meu macbook congelou completamente devido a um problema não relacionado e eu tive que fazer uma reinicialização completa usando o botão liga / desliga. Após a reinicialização, não consegui iniciar o Postgres devido a esse erro.
macos
postgresql
Dragão de fogo
fonte
fonte
brew reinstall postgresql
stackoverflow.com/a/39781473/6086226 funcionou para mimRespostas:
AVISO: Se você excluir o postmaster.pid sem garantir que realmente não haja
postgres
processos executando você, poderá danificar permanentemente o banco de dados . (O PostgreSQL deve excluí-lo automaticamente se o postmaster tiver saído.).SOLUÇÃO: Corrigido o problema - excluí este arquivo e tudo funcionou!
-
e aqui está como eu descobri por que isso precisava ser excluído.
Usei o seguinte comando para verificar se havia algum processo PG em execução. para mim não havia, nem consegui iniciar o servidor PG:
Eu procurei pelo arquivo .s.PGSQL.5432 que estava na mensagem de erro acima. eu usei o seguinte comando:
isso não mostrou nada depois de pesquisar em todo o computador para que o arquivo não existisse, mas obviamente
psql
"queria" ou "achou que estava lá".Dei uma olhada nos logs do meu servidor e vi o seguinte erro:
no final do log do servidor, vejo o seguinte erro:
Seguindo os conselhos da mensagem de erro, excluí o arquivo postmaster.pid no mesmo diretório que server.log. Isso resolveu o problema e eu pude reiniciar.
Então, parece que meu macbook congelando e sendo reinicializado com força fez com que o Postgres pensasse que seus processos ainda estavam em execução, mesmo após a reinicialização. A exclusão deste arquivo foi resolvida. Espero que isso ajude os outros! Muitas pessoas têm problemas semelhantes, mas a maioria das respostas tinha a ver com permissões de arquivo, enquanto no meu caso as coisas eram diferentes.
fonte
postgres
processos em execução antes de fazê-lo./usr/local/var/log/postgres.log
.Nenhuma das opções acima funcionou para mim. Eu tive que reinstalar o Postgres da seguinte maneira:
brew uninstall postgresql
brew doctor
(conserte o que estiver aqui)brew cleanup
Remova todas as pastas do Postgres:
rm -r /usr/local/var/postgres
rm -r /Users/<username>/Library/Application\ Support/Postgres
Reinstale o postgresql com o brew:
brew install postgresql
brew services start postgresql
createdb
)fonte
brew postgresql-upgrade-database
brew reinstall postgres
, confirmando que o último número da versão principal do Homebrew Postgres era o mesmo que o atual (quebrado).Se você estiver no macOS e instalou o postgres via homebrew, tente reiniciá-lo com
Se você estiver no Ubuntu, poderá reiniciá-lo com qualquer um destes comandos
fonte
Talvez isso não esteja relacionado, mas um erro semelhante aparece quando você atualiza
postgres
para uma versão principal usandobrew
; usandobrew info postgresql
descobriu isso que ajudou:fonte
Aqui está o meu caminho:
fonte
fix-my-postgresql
lo, executará isso :)se você
postmaster.pid
se foi e você não pode reiniciar ou algo assim, faça o seguinte:pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
como explicado aqui inicialmente
fonte
Olá mundo :)
A melhor, mas estranha, maneira para mim foi fazer as próximas coisas.
1) Faça o download do postgres93.app ou outra versão. Adicione este aplicativo à pasta / Applications /.
2) Adicione uma linha (comando) ao arquivo
É um CAMINHO para.bash_profile
(que está no meu diretório pessoal):psql
partirPostgres93.app
. A linha (comando) é executada toda vez que o console é iniciado.3) Inicie a
Postgres93.app
partir da/Applications/
pasta. Inicia um servidor local (a porta é "5432" e o host é "localhost").4) Depois de todas essas manipulações, fiquei feliz em executar
$ createuser -SRDP user_name
e outros comandos e ver que funcionava!Postgres93.app
pode ser feito para executar sempre que o sistema for iniciado.5) Além disso, se você quiser ver graficamente seus bancos de dados, instale
PG Commander.app
. É uma boa maneira de ver seu banco de dados do postgres como bonitas tabelas de dadosObviamente, é útil apenas para o servidor local. Ficarei feliz se essas instruções ajudarem outras pessoas que enfrentaram esse problema.
fonte
export PATH='/usr/local/Cellar/postgresql/9.4.1/bin/':$PATH
- Lembre-se de que o número da sua versão pode ser diferente.Esse problema tem muitas fontes e, portanto, muitas respostas. Eu experimentei cada um deles.
1) Se você tiver algum tipo de falha, remover o arquivo /usr/local/var/postgres/postmaster.pid provavelmente é necessário, pois o postgres pode não ter o tratado adequadamente. Mas verifique se nenhum processo está em execução.
2) Craig Ringer apontou em outros posts que o empacotamento do postgreSQL pela Apple leva a problemas de instalação da pg gem A configuração da variável de ambiente PATH é uma solução.
3) Outra solução é desinstalar e reinstalar a gema. Uma atualização de preparação também pode ser necessária.
Se você se deparar com esta postagem, se conseguir identificar uma das fontes, economizará tempo ...
fonte
Para mim, a solução foi simplesmente reiniciar meu computador. Tentei reiniciar com os serviços do Brew e, quando isso não funcionou, reiniciar parecia a próxima melhor opção a ser feita antes de examinar algumas das soluções mais envolvidas. Tudo funcionou como deveria depois.
fonte
Eu estava enfrentando um problema semelhante aqui. Resolvi esse problema como abaixo.
Na verdade, o processo do postgres está inoperante, para ver o status do postgres execute o seguinte comando
Ele diz que o processo está morto` basta iniciar o processo
fonte
Isso aconteceu comigo depois que o meu Mac (High Sierra) congelou e tive que reiniciá-lo manualmente (pressione e segure o botão liga / desliga). Tudo o que eu precisava fazer para corrigi-lo foi fazer uma reinicialização limpa.
fonte
Meu problema acabou sendo que eu estava usando o Gas Mask (um gerenciador de arquivos hosts para Mac) e não tinha uma entrada para localhost no arquivo hosts que estava usando.
Eu adicionei:
E isso resolveu meu problema.
fonte
Não sei bem por que, mas minha instalação do Postgres foi um pouco danada e alguns arquivos foram excluídos, resultando no erro que o OP está mostrando.
Apesar do fato de eu conseguir executar comandos como
brew service retart postgres
e ver as mensagens apropriadas, esse erro persistiu.Examinei a documentação do postgres e descobri que meu arquivo
/usr/local/var/postgres
estava totalmente vazio. Então eu executei o seguinte:Parece que algumas configurações ocorreram com esse comando.
Então ele me pediu para executar isso:
E isso me disse que um arquivo postmaster.pid já existe.
Eu só precisava saber se o brew seria capaz de pegar as configurações que acabei de executar, então testei.
Isso me mostrou um arquivo postmaster.pid. Eu fiz
brew services stop postgresql
, e o arquivo postmaster.pid desapareceu. Então eu fizbrew services start postgresql
, e VIOLA, o arquivo reapareceu.Depois fui em frente e executei meu aplicativo, que de fato encontrou o servidor, no entanto, meus bancos de dados parecem ter sumido.
Embora eu saiba que eles podem não ter desaparecido - a nova inicialização que fiz pode ter criado uma nova área de dados, e a antiga não está sendo apontada. Eu teria que olhar para onde está e apontar novamente ou simplesmente criar meus bancos de dados novamente.
Espero que isto ajude! A leitura dos documentos do postgres me ajudou muito. Eu odeio ler respostas que são como "Cole this it works!" porque eu não sei o que diabos está acontecendo e por quê.
fonte
As causas deste erro são muitas; primeiro localize seu arquivo de log e verifique se há pistas. Pode estar em
/usr/local/var/log/postgres.log
ou/usr/local/var/postgres/server.log
ou possivelmente em outro lugar. Se você instalou com o Homebrew, poderá encontrar o local em~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
.fonte
Eu tive o mesmo problema. Na maioria das vezes, o problema é o fato de haver um arquivo restante
/usr/local/var/postgres/postmaster.pid
que funciona para a maioria das pessoas, mas meu caso foi diferente - tentei pesquisar no Google por esse problema nas últimas 3 horas, desinstalou o postresql no OSX por meio do brew, limpou o banco de dados, nada funcionou.
Finalmente, notei que tinha um problema com o brew que, sempre que tentava instalar qualquer coisa, aparecia:
Error: Permission denied @ rb_sysopen - /private/tmp/github_api_....
ou algo assim no final de uma instalação.
Eu simplesmente fiz
sudo chmod -R 777 /private/tmp
e finalmente funciona!Estou escrevendo isso porque isso pode ser uma solução para outra pessoa
fonte
Vá
/var/log/
e execute catpostgres.log
Aqui você encontrará o motivo da falha do postgres. Se for um desligamento inteligente, provavelmente a suaicu4c
versão (biblioteca C ++ para Unicode) não é adequada à qual está vinculadapostgres
. Portanto, execute os seguintes comandos.brew upgrade
brew cleanup
Isso deve funcionar;)fonte
brew style
depois sebrew cleanup
quebrar o Homebrew.Eu tive que consultar este post várias vezes para resolver esse problema. Há outra correção, que também se aplica a problemas semelhantes com outros programas em execução.
Acabei de descobrir que você pode usar os dois comandos a seguir.
$ top
Isso mostrará todas as ações em execução no momento com seus números pid. Quando você encontra o postgres e o pid associado
$ kill pid_number
fonte
Acabei de receber o mesmo problema que coloquei minha máquina (
ubuntu
) para atualização e obtive o erro abaixo:Depois de concluir o processo de atualização, quando eu reiniciar, o erro do sistema se foi. E funcionou como charme como antes .. Acho que isso aconteceu quando a página foi atualizada e outro processo iniciado.
fonte
ALERTA DO SUPER NEWBIE: Estou apenas aprendendo o desenvolvimento da Web e o tutorial em particular que segui mencionado. Tenho que instalar o Postgres, mas na verdade não mencionei que tenho que executá- lo também ... Depois de abrir o aplicativo Postgres, tudo estava bem e dândi.
fonte
A resposta de @Jagdish Barabari me deu a pista que eu precisava para resolver isso. Acontece que havia duas versões do postgresql instaladas enquanto apenas uma estava em execução. Limpar todos os arquivos do postgresql e reinstalar a versão mais recente resolveu esse problema para mim.
fonte
Eu removi / usr / lib do LD_LIBRARY_PATH e funcionou. Eu estava trabalhando no dockerfile postgres: alpine.
fonte