Postgresql psycopg2.0与openerp的操作错误
我已在windows环境中成功安装openerp/postgresql。后来我创建了“mydb”数据库。然后我尝试安装应用程序。系统抛出以下错误消息 psycopg2.OperationalError-mydb不存在-致命错误 我在postgresql服务器中验证了新包装的数据库-mydb。有人能告诉我为什么系统会弹出错误消息,即使数据库已经创建并可用 完整错误消息Postgresql psycopg2.0与openerp的操作错误,postgresql,openerp,Postgresql,Openerp,我已在windows环境中成功安装openerp/postgresql。后来我创建了“mydb”数据库。然后我尝试安装应用程序。系统抛出以下错误消息 psycopg2.OperationalError-mydb不存在-致命错误 我在postgresql服务器中验证了新包装的数据库-mydb。有人能告诉我为什么系统会弹出错误消息,即使数据库已经创建并可用 完整错误消息 {"message": "OpenERP Server Error", "code": 200, "data": {"debug
{"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_数据库中选择*(第四条记录mydb是我创建的数据库)
这里只有几个可能性:
- 您没有像使用psql那样使用OpenERP连接到同一台服务器。数据库仅存在于使用psql连接的服务器上。您可能有多个本地PostgreSQL安装—尤其是在mac上。比较
显示数据\u目录代码>连接上的输出
- 您已经编辑了
,而您的数据库实际上没有被称为pg_数据库的输出
,在这种情况下,问题可能是打字错误,但更可能是大小写折叠。搜索“PostgreSQL案例折叠”了解更多信息mydb
- 你在某处发现了一只很奇怪的虫子。不太可能
SELECT*的准确、复制和粘贴输出。我还建议您确保在这两种情况下都连接到同一个数据库。抱歉,耽搁了。我正面临互联网问题。谢谢克雷格。我已提供了所要求的资料。让我知道,如果你需要关于这个的任何其他信息,那么你的数据库真的叫做mydb
?您没有编辑/替换该名称吗?它并不是真的命名为OpenERPDatabase
或什么的?谢谢Craig抽出时间。我终于能够解决这个问题了。我多次开始卸载和安装openerp/postgresql/python,但都没有用。最后,甚至连jasper/ireport都与上述软件一起卸载了。可能是在安装ireport时安装了第二台postgressql服务器,openerp无法找到我的数据库mydb。(但不确定!)我将标记其中一种可能性(如下所示)由克雷格指示为正确答案。您没有像使用psql那样使用OpenERP连接到同一台服务器。数据库仅存在于使用psql连接的服务器上。您可能有多个本地PostgreSQL安装,尤其是在mac上。比较显示数据目录;连接上的输出。
"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