您好,欢迎访问一九零五行业门户网

exp/imp碰到的两则问题处理(ORA-00904和theobjectswereexportedb

最近负责搭建某系统的用户环境,其中涉及从测试环境导入数据,由于受客观因素制约,不能使用传输表空间方法同步,因此需要用imp/exp或数据泵的方法,这里采用的是imp/exp。下面记录操作过程中碰到的问题。 问题1:exp导出时ora-00904: ifreepool: invalid id
最近负责搭建某系统的用户环境,其中涉及从测试环境导入数据,由于受客观因素制约,不能使用传输表空间方法同步,因此需要用imp/exp或数据泵的方法,这里采用的是imp/exp。下面记录操作过程中碰到的问题。
问题1:exp导出时ora-00904: ifreepool: invalid identifier和olevel: invalid identifier错误
第一次操作时:
用于执行imp/exp的版本是:10.2.0.4
用于导出的数据库版本是:10.2.0.3
执行exp abc/xxx file=test.dmp log=exp_test.log
过程中有一些报警:
exp-00008: oracle error 904 encountered
ora-00904: ifreepool: invalid identifier
...
exp-00008: oracle error 904 encountered
ora-00904: olevel: invalid identifier
...
exp-00000: export terminated unsuccessfully
这篇mos文章(726182.1)介绍了这种问题的原因:
如果源库是10.2.0.3,那么导出客户端需要是10.2.0.3版本,主要原因在于导出工具会一直访问数据字典对象,例如sys.exu9log,但10.2.0.4中引入了一个新列“ifreepool“,10.2.0.3中没有此列信息,因此不能操作。
从这里可以看出问题可能出在对lob对象的表操作,workaround就是使用10.2.0.3及以下版本。于是这使用了10.2.0.1版本,导出没有如上的报错了。
问题2:导入时warning: the objects were exported by abc not by you未导入任何对象
执行imp xyz/xxx file=test.dmp log=imp_test.log ignore=y commit=y buffer=300000000 feedback=10000
过程中提示:
warning: the objects were exported by abc, not by you
...
import done in zhs16gbk character set and al16utf16 nchar character set
. importing rtcrm's objects into uat_rtcrm
import terminated successfully without warnings.
没有任何对象导入到目标库。
上面的错误内容warning: the objects were exported by rtcrm, not by you,指的是即将导入的数据属于abc用户,但导入时使用的是xyz用户,因此需要对于这种导入导出用户名不同的情况,可以明确指定用户名称,执行:
imp xyz/xxx file=test.dmp log=imp_test.log fromuser=abc touser=xyz ignore=y commit=y buffer=300000000 feedback=10000
顺利执行导入操作了
其它类似信息

推荐信息