3

我正在使用 pgAdmin3 并使用 pkg 安装 postgreSQL 和 pg。我正在尝试通过 tomcat 连接到 postgreSQL。当我从我的 tomcat /bin 目录执行 ./startup.sh 时,日志文件显示此错误:

原因:org.springframework.beans.factory.BeanCreationException:在类路径资源[applicationContext-coreDataServices.xml]中定义名称为“metaModelDAO”的bean创建错误:调用init方法失败;嵌套异常是 org.apache.cayenne.CayenneRuntimeException:[v.3.0.1.LB Nov 16 2011 05:24:11] 检测数据库类型时出错:无法创建 PoolableConnectionFactory(致命:主机“10.0.0.197 没有 pg_hba.conf 条目", 用户 "abc_writer", 数据库 "abc", SSL 关闭)

这是我在 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/bin 打开 postmaster 时,它显示:

 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 中没有条目的原因是否是因为我没有权限如果是这样我如何获得权限?如果这不是问题,我是否有设置错误?

--- 谢谢,布赖恩

4

1 回答 1

2

您的 pg_hba.conf 中有一条错误的行。它应该读

host abc abc_writer 10.0.0.197/32 md5

注意“/32”。进行更改后,您需要重新加载 Postgresql 配置(例如“pg_ctl reload”)。我不确定“权限被拒绝”位是什么。

于 2013-10-10T01:17:08.083 回答