日期:2014-05-16  浏览次数:20851 次

关于impdp与expdp的一点疑问?
我需要将正式库中按schemas=kingdee导出来的文件恢复到测试库中,两库中都有kingdee用户,默认表空间名字不一样,于是我就把测试库的kingdee默认的表空间修改和正式库一致,在impdp的过程中,经常提示对象已经存在,我上网查了一下,可以用table_exists_action=replae重建,但这个参数是对表而言的。

问题:schemas包括table,index,view,constraint等等,测试库会存在一些名字一样但内容不一样的模式对象,此时如何导入,使得在两库中查询到的数据是一致的?

------解决方案--------------------
一个用户下不可能存在两个同名对象,同义词除外。

你可以选择保留哪个,有不同的处理方案。


------解决方案--------------------
引用:
我的意思是说在两库kingdee用户下存在相同的对象,那我用正式库的dmp文件恢复到测试库肯定会提示对象已经存在的


你的测试库只能有一个用户叫kingdee,那么你是想保留原来的对象还是保留你的dmp文件中的对象?
想保留原来的就让它提示,不用管;
想保留dmp里的就把原来的对象删除;
想两个都保留就再建一个用户保存dmp里面的对象;

有什么需要疑问的?
------解决方案--------------------
drop user kingdee cascade;

create user kingdee identified by xxx tablespace xxx;

impdp ...
------解决方案--------------------
引用:
Quote: 引用:

drop user kingdee cascade;

create user kingdee identified by xxx tablespace xxx;

impdp ...
这是一种方法,谢谢你哈

试试加这个参数
CONTENT=DATA_ONLY