带有openerp的psycopg2.OperationalError

时间:2014-01-10 05:52:32

标签: postgresql openerp

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

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

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

完成错误消息

 {"message": "OpenERP Server Error", "code": 200, "data": {"debug": "Traceback (most      recent call last):\n File \"/home/odoo/src/web/saas-1/addons/web/http.py\", line 304, in dispatch\n r = method(self, **self.params)\n File \"/home/odoo/src/addons/saas-1/auth_oauth/controllers/main.py\", line 33, in wrapper\n return func(self, req, **kw)\n File \"/home/odoo/src/custom/private/loempia/controllers/embed.py\", line 65, in signin\n File \"/home/odoo/src/server/saas-1/openerp/modules/registry.py\", line 206, in get\n update_module)\n File \"/home/odoo/src/server/saas-1/openerp/modules/registry.py\", line 222, in new\n registry = Registry(db_name)\n File \"/home/odoo/src/server/saas-1/openerp/modules/registry.py\", line 78, in __init__\n cr = self.db.cursor()\n File \"/home/odoo/src/server/saas-1/openerp/sql_db.py\", line 479, in cursor\n return Cursor(self._pool, self.dbname, serialized=serialized)\n File \"/home/odoo/src/server/saas-1/openerp/sql_db.py\", line 177, in __init__\n self._cnx = pool.borrow(dsn(dbname))\n File \"/home/odoo/src/server/saas-1/openerp/sql_db.py\", line 372, in _locked\n return fun(self, *args, **kwargs)\n File \"/home/odoo/src/server/saas-1/openerp/sql_db.py\", line 435, in borrow\n result = psycopg2.connect(dsn=dsn, connection_factory=PsycoConnection)\n File \"/usr/local/lib/python2.7/dist-packages/psycopg2/__init__.py\", line 164, in connect\n conn = _connect(dsn, connection_factory=connection_factory, async=async)\nOperationalError: FATAL: database \"mydb\" does not exist\n\n", "message": "FATAL: database \"mydb\" does not exist\n", "name": "psycopg2.OperationalError", "arguments": ["FATAL: database \"mydb\" does not exist\n"]}} 

从pg_database中选择*(第4条记录mydb是我创建的数据库)

   "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

1 个答案:

答案 0 :(得分:1)

这里只有几种可能性:

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

  • 您已经编辑了pg_database的输出,并且您的数据库并未真正调用mydb,在这种情况下,问题可能是拼写错误,但更有可能出现问题 - 折叠。搜索“PostgreSQL案例折叠”以了解更多信息。

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