Instalação do servidor PostgreSQL - não é possível localizar ou acessar a dll

2

Quando tento instalar o postgresql-9.0.4-1-windows.exe, em algum lugar na final da instalação eu recebo um erro. "... libintl-8.dll não foi encontrado ..."

(omesmoquenestetópico: link  link direto: link )

Tudo que encontrei em relação a esse erro sugere um problema de permissão da conta de usuário do Windows, mas eu estava logado como administrador. Eu tentei instalar o servidor PostgreSQL em outro disco que o padrão (D: \ Apps), junto com o diretório de dados. Os dados diretório foi criado ea dll relativa (libintl-8.dll) foi presente.

Consequências são que o serviço do PostgreSQL Windows não pode ser iniciado.

Eu não sou especialista em Windows, então minha pergunta é dupla:

  • um administrador pode ter diminuído os privilégios que causaram esse erro?
  • este erro pode ter outra causa além dos privilégios, quais?

Agradecemos antecipadamente por qualquer insight

    
por Jeroen Dierckx 14.06.2011 / 14:56

4 respostas

1

Como você pode ver na captura de tela, há um problema relacionado a initdb, exe , que cria / inicializa o novo cluster de banco de dados. Como a documentação do PostgreSQL permanece:

initdb must be run as the user that will own the server process, because the server needs to have access to the files and directories that initdb creates. Since the server cannot be run as root, you must not run initdb as root either. (It will in fact refuse to do so.)

De acordo com o doc do instalador, deve haver install-postgresql.log logfile no seu %TEMP% , então você pode obter mais informações (adicional existe a opção --debuglevel installer, execute com --help para ver mais descrição).

If you encounter any problems during installation, please check the logfile that is created in /tmp on Linux or Mac OS X or %TEMP% on Windows. The file will be called install-postgresql.log. The logfile may contain the superuser password you specified during the installation, which should be replaced before sharing the log with anyone.

Você está usando a conta de superusuário / serviço postgres padrão? Não sei se isso ajuda, mas você tenta removê-lo antes da instalação (limpa) (usando o cmd com direitos de administrador):

net user postgres /del
    
por 14.06.2011 / 17:54
1

Só porque você está logado como Administrador não significa que você pode acessar todos os arquivos - significa apenas que você pode se dar os privilégios para acessar todos os arquivos.

Verifique os privilégios na DLL em questão e certifique-se de que o usuário que executa a instalação e a conta do serviço postgres tenham privilégios de leitura nesse arquivo

    
por 14.06.2011 / 15:53
0

Atualização : eu também consegui seguir o exemplo abaixo instalando o Postgres 9.4.x no Windows Server 2008.

Eu tinha o mesmo libint-8.dll mencionado e outros problemas ao instalar o Postgres 9.0.x no Windows Server 2008 (detalhes: executando o instalador como administrador, com opção de instalar como serviço usando uma conta de serviço).

O que eu precisava fazer para que as coisas funcionassem:

  1. No final, eu usei apenas um nível de diretório para onde eu instalei o executável (e também para o diretório de dados). Eu estava tentando criar uma estrutura de pastas em que o executável era um par de pastas profundas, então eu estava especificando folderA / folderB / finalfolder. Alguns página que encontrei enquanto googling sugeriu não fazer isso, mas para criar um nível de pasta no máximo. (Tentei voltar pelo meu navegador história para encontrar essa página, uma vez que parece que resolveu o meu problema e eu quero dar crédito. Mas não consegui encontrar a página novamente.

  2. Com base nas soluções sugeridas por outras pessoas frustradas para problemas de permissões, eu também comecei dando "Todos" completa controle sobre o diretório de instalação e o diretório de dados. No entanto, essas outras soluções deixaram de mencionar o próximo passo, o que é importante para a segurança:

  3. Então, e isso é importante para a segurança , uma vez que a instalação trabalhei sob a combinação dos dois pontos acima, adicionei ler & executar para a conta de serviço postgres na pasta executável (e abaixo), e modifique | escreva | leia na pasta de dados. Eu então despojado dos direitos que eu tinha dado "todos". Eu reiniciei o serviço de banco de dados e ainda funcionou, mas agora sem o bastante Permissões aparentemente inseguras para todos.

Bastante doloroso ao todo. Demorou 2-3 horas para acertar a combinação que parecia funcionar.

    
por 20.11.2013 / 03:47
-2

Eu tive exatamente o mesmo problema. Tentei instalar o PostgreSQL na minha pasta de usuário (usando direitos de administrador). O mesmo problema.

Solução : instale em C:\PostgreSQL , sem usar subdiretórios. Trabalhou para mim imediatamente.

    
por 10.11.2016 / 10:32