关于postgresql:psycopg2.OperationalError with openerp

psycopg2.OperationalError with openerp

我已经在windows环境中成功安装了openerp / postgresql。 后来我创建了'mydb'数据库。 然后我尝试安装应用程序。 系统抛出以下错误消息。

psycopg2.OperationalError - mydb不存在 - 致命错误。

我在postgresql服务器上验证了新的crated database-mydb。 有人可以帮助我为什么系统会弹出错误信息,即使daabase已创建并可用?

完整的错误消息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 {"message":"OpenERP Server Error","code": 200,"data": {"debug":"Traceback (most      recent call last):
 File "
/home/odoo/src/web/saas-1/addons/web/http.py", line 304, in dispatch
 r = method(self, **self.params)
 File "
/home/odoo/src/addons/saas-1/auth_oauth/controllers/main.py", line 33, in wrapper
 return func(self, req, **kw)
 File "
/home/odoo/src/custom/private/loempia/controllers/embed.py", line 65, in signin
 File "
/home/odoo/src/server/saas-1/openerp/modules/registry.py", line 206, in get
 update_module)
 File "
/home/odoo/src/server/saas-1/openerp/modules/registry.py", line 222, in new
 registry = Registry(db_name)
 File "
/home/odoo/src/server/saas-1/openerp/modules/registry.py", line 78, in __init__
 cr = self.db.cursor()
 File "
/home/odoo/src/server/saas-1/openerp/sql_db.py", line 479, in cursor
 return Cursor(self._pool, self.dbname, serialized=serialized)
 File "
/home/odoo/src/server/saas-1/openerp/sql_db.py", line 177, in __init__
 self._cnx = pool.borrow(dsn(dbname))
 File "
/home/odoo/src/server/saas-1/openerp/sql_db.py", line 372, in _locked
 return fun(self, *args, **kwargs)
 File "
/home/odoo/src/server/saas-1/openerp/sql_db.py", line 435, in borrow
 result = psycopg2.connect(dsn=dsn, connection_factory=PsycoConnection)
 File "
/usr/LOCAL/lib/python2.7/dist-packages/psycopg2/__init__.py", line 164, in connect
 conn = _connect(dsn, connection_factory=connection_factory, async=async)
OperationalError: FATAL: database "
mydb" does not exist

"
,"message":"FATAL: database "mydb" does not exist
"
,"name":"psycopg2.OperationalError","arguments": ["FATAL: database "mydb" does not exist
"
]}}

select * from pg_database(第4条记录mydb是我创建的数据库)

1
2
3
4
  "template1";6;"English_United States.1252";t;t;-1;1663;"{=c/openpg,openpg=CTc/openpg}";"English_United States.1252";10
  "template0";6;"English_United States.1252";t;f;-1;1663;"{=c/openpg,openpg=CTc/openpg}";"English_United States.1252";10
  "postgres";6;"English_United States.1252";f;t;-1;1663;"";"English_United States.1252";10
  "mydb";6;"English_United States.1252";f;t;-1;1663;"";"English_United States.1252";10


这里只有几种可能性:

  • 您没有像使用psql那样使用OpenERP连接到同一台服务器。 DB仅存在于使用psql连接的服务器上。 您可能有多个本地PostgreSQL安装 - 特别是如果您在Mac上。 比较连接上的SHOW data_directory;输出。

  • 您已经编辑了pg_database的输出,并且您的数据库实际上并未被称为mydb,在这种情况下,问题可能是拼写错误,但更可能是使用大小写折叠。 搜索"PostgreSQL案例折叠"以了解更多信息。

  • 你在某个地方发现了一个非常奇怪的错误。不太可能。