Allinone安装的数据库恢复到ubuntu源码安装的问题
-
在用pgAdminIII 备份win上用allinone安装的oe时,因为allinone的用户是openpg 因为我要恢复到ubuntu源码安装的环境下,所以我恢复的时候老是有出现一个错误“openpg 不存在” 我用的用户是openerp 恢复出来的数据库表的拥有者都是postgres 导致登陆时候出现这样的错误
programming ERROR:permission deny for relation ir_module_module
我改了ir_module_module的拥有者为openerp报的错就变成:
programming ERROR:permission deny for relation ir_module_fields
我有认真搜索过论坛但是没有看到详解这种情况的,求版主和各位有空的大哥教教!或者有没有比较好的dump,restore的方法! -
1.如果你备份出来的是sql语句,你还可以直接打开把里面的Alter xxxx own to openpg删掉。
2.你可以尝试在pgadmin上备份选择不保存所有者。
3.直接通过命令行备份恢复。<br />pg_dump dbname -U dbusername -h localhost -p 5432 -O > /home/joshua/db.backup<br />psql -h localhost -U dbusername -d dbname < /home/joshua/db.backup<br />
pg_dump 的-O就是 no owner,不备份拥有者信息。 -
遇到同样的问题,但是 安装第2点说的,不备份用户信息。数据库是恢复了,里面的数据是也正常的,但是还是会提示一个 WARNING: no privileges could be revoked for "public"
REVOKE
ERROR: role "openpg" does not exist
ERROR: role "openpg" does not exist
WARNING: no privileges were granted for "public"
不知道会不会有什么影响。
PS:我的操作 : 1:all in one 备份: cmd 进入命令行,进入到 c:\program files\openerp 6.1-1\psotgresql\bin
输入 : pg_dump -U openpg -h localhost -O (dbname) > c:(dbname).backup
2: 把 backup文件 拷贝到 ubuntu 的/home/(user)/ 下
3:恢复 。恢复前,用 openerp 用户创建一个新的数据库(newdbname),psql -U openerp -h localhost -d (newdbname) < /home/(user)/(dbname).backup