將源庫分區表數據遷移到歷史庫中碰到IMP-00058 ORA-00904錯誤,具體操作及解決如下:
\'/ as sysdba\' STATISTICS=NONEDATA_ONLY=y file=/backup/wxlun20130911.dmplog=/backup/wxlun20130911.implog fromuser=wxlun touser=wxlun_his buffer=5400000
Import: Release 11.2.0.3.0 - Production on Wed Sep 11 10:54:392013
Copyright (c) 1982, 2011, Oracle and/or itsaffiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real ApplicationTesting options
Export file created by EXPORT:V11.02.00 via conventional path
Warning: the objects were exported by WXLUN, not by you
import done in ZHS16GBK character set and AL16UTF16 NCHAR characterset
. importing WXLUN's objects into WXLUN_HIS
. . importing partition "WXLUN_T01":"PT_201306"
IMP-00058: ORACLE error 904 encountered
ORA-00904: "TOEXPRESSCOMPANYID": invalid identifier
IMP-00057: Warning: Dump file may not contain data of allpartitions of this table
. . importing partition "WXLUN_T02":"VAPT_201306" 12553338 rows imported
IMP-00057: Warning: Dump file may not containdata of all partitions of this table ---因為只導入一個分區數據,會報這個錯誤,在此忽略
Import terminated successfully with warnings.
表WXLUN_T02分區數據導入成功,而WXLUN_T01導入失敗,查看目的庫的WXLUN_T01表結構
SYS@wxlun_his>desc WXLUN.WXLUN_T01
Name Null? Type
------------------------------------------------- ----------------------------
BCID NOT NULL VARCHAR2(20)
FORMCODE NOT NULL VARCHAR2(50)
CURRENTSTATUS NOT NULL NUMBER(3)
PRESTATUS NOT NULL NUMBER(3)
RETURNSTATUS NUMBER(3)
OPERATETYPE NOT NULL NUMBER(5)
CURRENTDISTRIBUTIONCODE NOT NULL VARCHAR2(50)
DELIVERSTATIONID NOT NULL NUMBER(10)
NOTE NOT NULL VARCHAR2(400)
CREATEBY NOT NULL NUMBER(10)
CREATEDEPT NOT NULL NUMBER(10)
CREATETIME NOT NULL DATE
ISDELETED NOT NULL NUMBER(1)
SYNCFLAG NOT NULL NUMBER(1)
SYNCTIME DATE
IPADDRESS VARCHAR2(20)
CLIENTINFO VARCHAR2(2000)
源庫WXLUN_T01表結構
sys@wxlun:SQL>desc WXLUN.WXLUN_T01
Name Null? Type
-------------------------------------------------------------------------------- -------------------------------------------------
BCID NOT NULL VARCHAR2(20)
FORMCODE NOT NULL VARCHAR2(50)
CURRENTSTATUS NOT NULL NUMBER(3)
PRESTATUS NOT NULL NUMBER(3)
RETURNSTATUS NUMBER(3)
OPERATETYPE NOT NULL NUMBER(5)
CURRENTDISTRIBUTIONCODE NOT NULL VARCHAR2(50)
DELIVERSTATIONID NOT NULL NUMBER(10)
NOTE NOT NULL VARCHAR2(400)
CREATEBY NOT NULL NUMBER(10)
CREATEDEPT NOT NULL NUMBER(10)
CREATETIME NOT NULL DATE
ISDELETED NOT NULL NUMBER(1)
SYNCFLAG NOT NULL NUMBER(1)
SYNCTIME DATE
IPADDRESS VARCHAR2(20)
CLIENTINFO VARCHAR2(2000)
TODISTRIBUTIONCODE VARCHAR2(100)
TOEXPRESSCOMPANYID NUMBER
發現源庫的表增加了兩個字段(隨著業務需要,某些表會增加字段),將目的庫表添加相應字段,,并將導入失敗的表數據重新導入:
SYS@wxlun_his>alter table WXLUN.WXLUN_T01 add TODISTRIBUTIONCODEVARCHAR2(100);
alter table WXLUN.WXLUN_T01 add TOEXPRESSCOMPANYID NUMBER;
Table altered.
SYS@wxlun_his>
Table altered.
$imp \'/ as sysdba\' STATISTICS=NONEDATA_ONLY=y file=/backup/wxlun20130911.dmplog=/backup/wxlun20130911.implog fromuser=wxlun touser=wxlun_his buffer=5400000 tables=WXLUN_T01
Import: Release 11.2.0.3.0 - Production on Wed Sep 11 11:09:282013
Copyright (c) 1982, 2011, Oracle and/or itsaffiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real ApplicationTesting options
Export file created by EXPORT:V11.02.00 via conventional path
Warning: the objects were exported by WXLUN, not by you
import done in ZHS16GBK character set and AL16UTF16 NCHAR characterset
. importing WXLUN's objects into WXLUN_HIS
. . importing partition"WXLUN_T01":"PT_201306" 6779635 rowsimported ---導入成功
IMP-00057: Warning: Dump file may not contain data of allpartitions of this table
Import terminated successfully with warnings.
$
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com