2015-12-21 64 views
2

每当我尝试备份我的数据库,我得到以下错误:Odoo 8不能备份数据库(Postgres的)

Postgres subprocess ('/usr/bin/pg_dump', '--no-owner', '--username=odoo', '--file=/tmp/tmp3AYPgp/dump.sql', u'OdooSetup') error 1

有人可以帮助请。

+0

能否请你说明你是如何试图备份数据库? –

+0

具有u从管理员帐户(超级用户)在odoo-8 –

+0

@MarcoAltieri通过Odoo /网络/数据库/经理,然后备份(zip文件)试试。 – Jesse

回答

1

从系统shell启动的命令,还有你会看到错误。 FE:

pg_dump的--no所有者--username = odoo OdooSetup>的/ dev/null的

0

给我这个错误的一些细节,我想最后它显示像在数据库中找到没有用户odoo像那样。

首先,检查用户odoo是否存在于数据库中(如果您的系统用户名是odoo )其他方式在postgres中使用与System用户相同的名称创建Superuser并尝试。

0

我刚刚经历过这种情况,在我的情况下,问题是,有数据库中的某些序列,其主人是不是预期的一个(它应该是一样的数据库所有者)。

我的意思是,我的数据库是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; 

我希望这对某人有帮助。