3

Я использую pgAdmin3 и использовал pkg для установки postgreSQL и pg. Я пытаюсь подключиться к postgreSQL через tomcat. Когда я это делаю ./startup. ш от моего кота/бен директории файл журнала показывает эту ошибку:Ошибка определения типа базы данных: не удается создать PoolableConnectionFactory (FATAL: no pg_hba.conf

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'metaModelDAO' defined in class path resource [applicationContext-coreDataServices.xml]: Invocation of init method failed; nested exception is org.apache.cayenne.CayenneRuntimeException: [v.3.0.1.LB Nov 16 2011 05:24:11] Error detecting database type: Cannot create PoolableConnectionFactory (FATAL: no pg_hba.conf entry for host "10.0.0.197", user "abc_writer", database "abc", SSL off)

Вот что у меня в context.xml:

<Context> 
    <Resource username="abc_writer" password="levelsbeyond" 
       url="jdbc:postgresql://localhost:5432/abc" 
      type="javax.sql.DataSource" name="jdbc/abc-workflow" 
      maxWait="10000" maxIdle="20" maxActive="50" 
      driverClassName="org.postgresql.Driver" auth="Container" /> 
</Context> 

А вот то, что мой pg_hba.config выглядит следующим образом:

# TYPE DATABASE  USER   ADDRESS     METHOD 
# "local" is for Unix domain socket connections only 
local all    all          md5 
# IPv4 local connections: 
host all    all    127.0.0.1/32   md5 
# IPv6 local connections: 
host all    all    ::1/128     md5 
# Allow replication connections from localhost, by a user with the 
# replication privilege. 
#local replication  postgres        md5 
#host replication  postgres  127.0.0.1/32   md5 
#host replication  postgres  ::1/128     md5 
host  abc  abc_writer  10.0.0.197  md5 

Когда я открываю почтмейстер из PostGreSQL/бен читает это:

localhost:~ bryanraymond$ /Library/PostgreSQL/9.3/bin/postgres ; exit; 
postgres cannot access the server configuration file  
"/Library/PostgreSQL/9.3/data/postgresql.conf": Permission denied 
logout 

Будет ли причина того, что он говорит, что у меня нет входа в pg_hba.conf не будет, потому что я не имею разрешения, если да, то как сделать Я получаю разрешение? Если это не проблема, у меня что-то не так?

--- Спасибо, Брайан

+0

Что происходит, когда вы запускаете 'psql -h localhost -U abc_writer -d abc'? –

+0

Я получаю это: localhost: ~ bryanraymond $ psql -h localhost -U abc_writer -d abc psql (9.1.9, server 9.3.0) ВНИМАНИЕ: psql версия 9.1, версия сервера 9.3. Некоторые функции psql могут не работать. Введите «помощь» для получения справки. abc = # – user2864917

ответ

2

Вы ошибочная строка в pg_hba.conf. Он должен читать

host abc abc_writer 10.0.0.197/32 md5

Обратите внимание на "/ 32". После внесения этих изменений вам потребуется перезагрузить конфигурацию Postgresql (например, «pg_ctl reload»). Я не уверен, что бит «разрешен отказ».

+0

После изменения файла pg_hba.conf я попробовал перезапуск pg_ctl и я эту ошибку. localhost: ~ bryanraymond $ pg_ctl restart pg_ctl: не удалось открыть файл PID «/Library/PostgreSQL/9.3/data/postmaster.pid»: Permission denied. Я получаю эту ошибку, когда я делаю это следующим образом: localhost: ~ bryanraymond $ sudo pg_ctl restart Пароль: pg_ctl: не может быть запущен как root И когда я пытаюсь запустить это у пользователя postgres, я получаю этот localhost: ~ bryanraymond $ su postgres pg_ctl restart Пароль: /usr/local/bin/pg_ctl:/usr/local/bin/pg_ctl: невозможно выполнить двоичный файл – user2864917

+0

Файлы postgresql.conf и pg_hba.conf должны принадлежать пользователю postgres (или любой другой ОС пользователь владеет файлами данных postgres $ PGDATA). – bma

 Смежные вопросы

  • Нет связанных вопросов^_^