每当我尝试备份我的数据库,我得到以下错误:Odoo 8不能备份数据库(Postgres的)
Postgres subprocess ('/usr/bin/pg_dump', '--no-owner', '--username=odoo', '--file=/tmp/tmp3AYPgp/dump.sql', u'OdooSetup') error 1
有人可以帮助请。
每当我尝试备份我的数据库,我得到以下错误:Odoo 8不能备份数据库(Postgres的)
Postgres subprocess ('/usr/bin/pg_dump', '--no-owner', '--username=odoo', '--file=/tmp/tmp3AYPgp/dump.sql', u'OdooSetup') error 1
有人可以帮助请。
从系统shell启动的命令,还有你会看到错误。 FE:
pg_dump的--no所有者--username = odoo OdooSetup>的/ dev/null的
给我这个错误的一些细节,我想最后它显示像在数据库中找到没有用户odoo像那样。
首先,检查用户odoo是否存在于数据库中(如果您的系统用户名是odoo )其他方式在postgres中使用与System用户相同的名称创建Superuser并尝试。
我刚刚经历过这种情况,在我的情况下,问题是,有数据库中的某些序列,其主人是不是预期的一个(它应该是一样的数据库所有者)。
我的意思是,我的数据库是PostgreSQL用户odoo
拥有。但在这个数据库中,有一些序列的所有者是odoo_8
(谁是我拥有的另一个PostgreSQL用户)。我不知道为什么会这样的原因,但您可以修复之后的下一个步骤:
连接到数据库通过psql
:
\c your_database
显示每个表中的所有者和顺序您数据库:
\d
检查是否有一些其所有者不是正确的。如果是这样,改变他们:
ALTER SEQUENCE sequence_name OWNER TO right_user;
ALTER TABLE table_name OWNER TO right_user;
这个命令也应该工作,并要快得多:
REASSIGN OWNED BY right_user TO right_user;
应该修改所有数据库所有者通过right_user
主人,所有的表格和您连接到的数据库的所有序列。
总之,如果它给你错误的数据库名为MY_DATABASE和PostgreSQL的主人是odoo
,与odoo
用户(或超级用户)连接到psql
,并做到这一点:
\c my_database
REASSIGN OWNED BY odoo TO odoo;
我希望这对某人有帮助。
能否请你说明你是如何试图备份数据库? –
具有u从管理员帐户(超级用户)在odoo-8 –
@MarcoAltieri通过Odoo /网络/数据库/经理,然后备份(zip文件)试试。 – Jesse