2013年1月5日星期六

删除EBS HR用户恢复记

安装oracle数据库自带的示例HR schema的时候一不小心就将EBS的HR用户给drop掉了, 而数据库有没有作本分导致EBS无法使用. 这段时间一直在折腾这事情, 见:
Does Oracle sample schemas HR/OE overwrite APPS' alike schemas?
high version expdp, low version impdp, is this posibble?

最终由于实在不想重新安装EBS(12.1.1+upgrade+NLS patch), 于是考虑从其他的环境中拷贝一个HR schema. 在使用data pump拷贝数据时遇到了ORA-39142 "incompatible version"错误, 错误的原因是:
将高版本使用expdp导出的数据使用impdp导入到低版本的数据库中.
解决方法:
首先登录低版本数据库使用show parameter compatible查看数据库的兼容版本, 然后在expdp导出数据时将version参数指定为该版本. 以我的为例:
expdp hr/welcome directory=DMP_DIR dumpfile=hr.dmp schemas=hr version=11.1.0 logfile=hr.dmp.log
impdp hr/welcome directory=DUMP_TMP schemas=HR dumpfile=hr.dmp logfile=hr.dmp.log TABLE_EXISTS_ACTION=REPLACE

重新导入数据之后, 终于可以登录EBS并打开forms界面了.

--END--

没有评论:

发表评论