首页 > 解决方案 > OperationalError:致命:角色“....”不存在

问题描述

我有一个带有 Openerp 7 和 postgresql 的服务器(Ubuntu 12.4)。当我用这个命令运行 openerp 时:

    sudo service openerp start

它有效(我认为它被称为守护进程)。

所以我尝试用可执行文件“直接”执行它:

    sudo service openerp stop
    /usr/bin/python /usr/bin/openerp -c /etc/openerp/openerp-server.conf

一开始有如下错误“OperationalError:fe_sendauth:没有提供密码**”所以我编辑了pg_hba.conf,就像我在这个网站上看到的那样 http://ujwalafossist.blogspot.com/2015/01/operationalerror-fesendauth -no-password.html

我尝试了很多东西,现在我的 pg_hba.conf 文件是这样的: 在此处输入图像描述

所以现在当我跑步时

     /usr/bin/python /usr/bin/openerp -c /etc/openerp/openerp-server.conf

并在我的导航器中刷新 openerp 我有错误 也许这是一个提示,但是当我执行命令时,在刷新之前我在终端中看到 但我不想使用鸡蛋我想使用 eggpg在此处输入图像描述 在此处输入图像描述在此处输入图像描述


编辑:当我运行“sudo su postgres”时,我进入我的数据库并输入 \du:我有 3 个角色:eggpg、openerp 和 postgres(但没有蛋)。 在此处输入图像描述

因此,当我运行守护程序时,它可以工作;当我直接运行命令时,配置文件有 db_user = eggpg 在此处输入图像描述

标签: postgresqlopenerp-7

解决方案


解决方案:必须更改 pg_hba 文件

' # "local" 仅适用于 Unix 域套接字连接 '

'本地人都信任'

并使用 db 用户和 db 密码:

python /usr/bin/openerp -c /etc/openerp/openerp-server.conf -r openerp -w mypassword 或者

python /usr/bin/openerp -c /etc/openerp/openerp-server.conf --db_user=openerp --db_password=mypassword


推荐阅读