AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / Perguntas / 50906
Accepted
DPSSpatial
DPSSpatial
Asked: 2013-10-03 12:24:45 +0800 CST2013-10-03 12:24:45 +0800 CST 2013-10-03 12:24:45 +0800 CST

Por que o PostgreSQL 9.3 não inicia no Ubuntu?

  • 772

Eu instalei com sucesso o PostgreSQL 9.3 a partir do repositório APT em 2 VMs executando o Ubuntu 12.04 e 13.04... no entanto, não consigo instalá-lo corretamente na minha máquina host executando o Ubuntu 12.04.

A instalação (desta vez) parece ter corrido bem, mas talvez haja um erro que não estou entendendo:

* No PostgreSQL clusters exist; see "man pg_createcluster"
Setting up postgresql-9.3 (9.3.0-2.pgdg12.4+1) ...
Creating new cluster 9.3/main ...
  config /etc/postgresql/9.3/main
  data   /var/lib/postgresql/9.3/main
  locale en_US.UTF-8
  port   5432
update-alternatives: using /usr/share/postgresql/9.3/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode.

Então, tento me adicionar como usuário do PostgreSQL, mas recebo isso:

createuser: could not connect to database postgres: 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"?

Não consigo ver o PostgreSQL rodando no monitor do sistema e não há nenhum arquivo na pasta /var/run/postgresql/...completamente vazio.

EDIT: Nas VMs, há um arquivo em /var/run/postgresql/ chamado 9.3-main.pid

Não há nada no arquivo de log da máquina host localizado em /var/log/postgresql

Então... o que está acontecendo aqui que não está acontecendo nas minhas VMs? Como eu disse, as outras instalações nas VMs, incluindo PostGIS e PGAdmin, vieram perfeitas...

postgresql postgresql-9.3
  • 7 7 respostas
  • 50581 Views

7 respostas

  • Voted
  1. Best Answer
    Marko Benko
    2015-07-31T04:59:02+08:002015-07-31T04:59:02+08:00

    Minhas configurações de localidade não foram configuradas corretamente quando o PostgreSQL foi instalado. Limpar e reinstalar não ajudou. Eu segui as instruções aqui e isso fez o truque para mim.

    Partes essenciais das informações vinculadas reproduzidas abaixo:

    O problema se apresentou da seguinte maneira:

    warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    ...
    are supported and installed on your system.
    

    O primeiro foi muito fácil de resolver executando:

    #dpkg-reconfigure locales
    

    ...e escolhendo os locais preferidos.

    Mas depois disso o PostgreSQL ainda se recusou a iniciar. Isso se deve ao fato de que o processo de instalação tentou criar um cluster no momento da instalação, mas devido aos locais incorretos, isso não foi feito. Então, temos que refazer esta etapa executando:

    #pg_createcluster 9.3 main --start
    

    (Para a versão 9.3 do PostgreSQL)

    Após essa etapa, o PostgreSQL inicia perfeitamente via

    #/etc/init.d/postgresql start
    
    • 17
  2. tdg5
    2014-03-29T04:37:10+08:002014-03-29T04:37:10+08:00

    Espero que você já tenha resolvido esse problema, mas estou enfrentando um problema semelhante que parece ter uma fonte diferente, e talvez minha experiência ajude se você ainda estiver com problemas.

    Meu problema com o 9.3 no Ubuntu está relacionado ao diretório do soquete ser um diretório transitório em /run. Basicamente, o script init.d deve cuidar da criação do diretório do soquete em /run/postgresql se ele não existir durante a ação de inicialização. Este sempre será o estado das coisas após uma reinicialização.

    O problema é, entretanto, que o script init.d será encerrado antes de executar a ação start se o diretório do soquete não existir. Isso ocorre porque a chamada para pg_lsclusters falhará sem o diretório do soquete, o que, por sua vez, impede que a ação de início crie o diretório do soquete.

    Eu não descobri qual é a melhor solução, mas se eu realocar a lógica para criar o diretório do soquete da ação inicial para antes da chamada para pg_lsclusters, posso iniciar o servidor após a reinicialização sem problemas.

    Aqui está a parte da ação inicial que lida com a criação do diretório do soquete:

    # create socket directory
    if [ -d /var/run/postgresql ]; then
      chmod 2775 /var/run/postgresql
    else
      install -d -m 2775 -o postgres -g postgres /var/run/postgresql
      [ -x /sbin/restorecon ] && restorecon -R /var/run/postgresql || true
    fi
    

    Postarei uma atualização se a causa raiz disso ficar clara para mim, porque isso claramente não pode ser o comportamento esperado.

    TERMO ADITIVO:

    Acho que a razão pela qual eu estava enfrentando esse problema é porque eu não tinha um bom valor configurado para unix_socket_directories . No 9.2, essa opção de configuração costumava ser unix_socket_directory, que eu removi em vez de mudar para unix_socket_directories. Desde que defini um valor para unix_socket_directories, não tive nenhum problema com a inicialização do servidor.

    • 6
  3. Joe Love
    2014-01-04T10:03:19+08:002014-01-04T10:03:19+08:00

    Já tive vários problemas com o arquivo sockets, no seu caso /var/run/postgresql/.s.PGSQL.5432

    certifique-se de que o diretório /var/run/postgresql exista e seja gravável antes de iniciar o postgresql para mais informações veja esta discussão .

    também, ao conectar, use o sinalizador -h:

    psql -h localhost 
    

    e veja se resolve.

    • 3
  4. sorin
    2015-02-10T09:06:31+08:002015-02-10T09:06:31+08:00

    Isso parece corrigir o problema no Ubuntu:

    Edite postgresql.conf:

    unix_socket_directories='/var/run/postgresql
    

    Agora façaservice postgresql start

    • 1
  5. Ernesto
    2015-12-10T14:32:57+08:002015-12-10T14:32:57+08:00

    Sou novo em PSQL mas resolvi o problema editando start.conf tinha comentado a configuração "auto" para gerenciar o servidor manualmente, mas precisa de um valor: auto, manual ou disabled.

    EGD.

    • 1
  6. k_o_
    2016-01-06T05:19:53+08:002016-01-06T05:19:53+08:00

    Do meu lado, o script de inicialização está incorreto. Os arquivos de configuração estão instalados em /etc/postgresql/9.3/main mas o script /usr/share/postgresql-common/init.d-functions está pesquisando em

    for c in /etc/postgresql/"$2"/*; do 
    

    Substitua esta linha por

    for c in /etc/postgresql/"$2"/main; do
    
    • 1
  7. DPSSpatial
    2013-10-05T08:28:10+08:002013-10-05T08:28:10+08:00

    Tudo,

    depois de algumas escavações, encontrei (a) solução aqui:

    http://ubuntuforums.org/showthread.php?t=869080

    Que continha estas instruções:

    Execute no terminal:

    sudo mkdir -p /usr/local/pgsql/data
    sudo chown -R postgres:postgres /usr/local/pgsql/
    sudo su - postgres
    cd /usr/lib/postgresql/9.3/bin/
    ./initdb -D /usr/local/pgsql/data
    ./postgres -D /usr/local/pgsql/data
    

    Agora meu servidor está funcionando!!!

    EDIT : após uma reinicialização, o servidor ainda não está em execução ...

    Quaisquer pensamentos sobre por que eu precisava executar isso são apreciados!

    • -2

relate perguntas

  • Posso ativar o PITR depois que o banco de dados foi usado

  • Práticas recomendadas para executar a replicação atrasada do deslocamento de tempo

  • Os procedimentos armazenados impedem a injeção de SQL?

  • Sequências Biológicas do UniProt no PostgreSQL

  • Qual é a diferença entre a replicação do PostgreSQL 9.0 e o Slony-I?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Conceder acesso a todas as tabelas para um usuário

    • 5 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    pedrosanta Listar os privilégios do banco de dados usando o psql 2011-08-04 11:01:21 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve