12.2 以上版本的IMP-00403问题

exp/imp工具虽然已经非常古老,但有些时候还是非常有用。

曾经遇到一个场景:某用户下的数据对象非常,表有8万多张,索引有9万多个。还有其他乱七八糟的东西,也即这个用户下的对象有几十万个。 用expdp导出整个schema,纯数据差不多十个小时左右全部导出,然而这些数据对象却十几个小时还没有结束。

迫不得已,只能更换思路,想试试先用expdp导出纯数据,再用exp导出数据对象。 结果exp导出数据对象这一步只花了不到2个小时。 这个速度还是可以接受的,最后针对这个schema,就只能采用这种方式进行迁移。

好了,回到今天的主题,IMP-00403告警。

[oracle@19crac1 software]$ imp userid=\"sys/welcome1@gg as sysdba\" fromuser=test touser=test file=exp_test.dmp log=imp_test.log buffer=104857600 recordlength=65535 ignore=y rows=n indexes=y constraints=y statistics=none compile=y

Import: Release 12.2.0.1.0 - Production on Sun Aug 23 10:22:43 2020

Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved.


Connected to: Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

Export file created by EXPORT:V12.01.00 via conventional path
import done in ZHS16GBK character set and AL16UTF16 NCHAR character set
IMP-00403:

Warning: This import generated a separate SQL file "imp_test_sys.sql" which contains DDL that failed due to a privilege issue.

. importing TEST's objects into TEST
About to enable constraints...
Import terminated successfully with warnings.

在使用imp工具导入表结构的过程中,出现了IMP-00403告警信息。

搜索发现“IMP-00403 "Warning: This import generated a separate SQL file" Using 12.2 imp Command (Doc ID 2298963.1)”这篇文章。

 

大致意思就是在12.2及以上版本,如果执行imp工具的用户拥有dba权限,则在执行imp命令的过程中会触发IMP-00403告警信息,当出现这个告警信息时,我们需要检查告警中提及的DDL脚本文件,如果文件内容为空,则表示没有DDL语句需要手动执行,这个告警信息可以忽略;如果有内容,则需要手动处理。

 

posted @ 2020-08-23 10:50  石云华  阅读(4421)  评论(0编辑  收藏  举报