北京介紹Oracle11G兩個庫的子版本一樣 用exp(imp)匯出與匯入
system用戶匯出加上 full=y后,到另外一臺機器上恢復加上ignore=y full=y
在另外一臺服務器上恢復,提示報錯,但是我查詢某個用戶的下表數量與生產服務器上的表數量相同
我是一個Oracle白的不能再白的網管,我怎么才能取消掉這個些錯誤啊?看其他論壇說把備用資料庫的這個洗掉掉,我該怎么操作啊,不會啊
求大哥們,一步一步教我,不會啊,【表情】【表情】【表情】
. . 正在匯入表 "MVIEW$_ADV_PARTITION"匯入了 0 行
. . 正在匯入表 "REPCAT$_AUDIT_ATTRIBUTE"
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_AUDIT_ATTRIBUTE_PK)
列 1 TIMESTAMP
列 2 3
列 3
列 4 SYSDATE
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_AUDIT_ATTRIBUTE_PK)
列 1 GLOBAL NAME
列 2 2
列 3 128
列 4 DBMS_REPUTIL.GLOBAL_NAME匯入了 0 行
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_AUDIT_ATTRIBUTE" ADD CONSTRAINT "REPCAT$_AUDIT_ATTRIBU"
"TE_C1" CHECK ((data_type_id in (2, 4, 5, 6, 7) and"
" data_length is not null)"
" or (data_type_id not in (2, 4, 5, 6, 7) and"
" data_length is null)"
" ) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
. . 正在匯入表 "REPCAT$_AUDIT_COLUMN"匯入了 0 行
. . 正在匯入表 "REPCAT$_COLUMN_GROUP"匯入了 0 行
. . 正在匯入表 "REPCAT$_CONFLICT"匯入了 0 行
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_CONFLICT" ADD CONSTRAINT "REPCAT$_CONFLICT_C1" CHECK ("
"conflict_type_id in (1, 2, 3)) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
. . 正在匯入表 "REPCAT$_DDL"匯入了 0 行
. . 正在匯入表 "REPCAT$_EXCEPTIONS"匯入了 0 行
. . 正在匯入表 "REPCAT$_EXTENSION"匯入了 0 行
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_EXTENSION" ADD CONSTRAINT "REPCAT$_EXTENSION_CODE" CHE"
"CK (extension_code IN (0)) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_EXTENSION" ADD CONSTRAINT "REPCAT$_EXTENSION_EXPORTREQ"
"" CHECK (export_required IN ('Y', 'N')) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_EXTENSION" ADD CONSTRAINT "REPCAT$_EXTENSION_STATUS" C"
"HECK (extension_status IN (0, 1, 2, 3, 4)) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_EXTENSION" ADD CONSTRAINT "REPCAT$_EXTENSION_PUSH_TO_M"
"DEF" CHECK (push_to_mdef IN ('Y', 'N')) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_EXTENSION" ADD CONSTRAINT "REPCAT$_EXTENSION_PUSH_TO_N"
"EW" CHECK (push_to_new IN ('Y', 'N')) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
. . 正在匯入表 "REPCAT$_FLAVORS"匯入了 0 行
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_FLAVORS" ADD CONSTRAINT "REPCAT$_FLAVORS_C2" CHECK (pu"
"blished is NULL or (published in ('Y','N','O'))) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
. . 正在匯入表 "REPCAT$_FLAVOR_OBJECTS"匯入了 0 行
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_FLAVOR_OBJECTS" ADD CONSTRAINT "REPCAT$_FLAVOR_OBJECTS"
"_VERSION" CHECK (version# >= 0 AND version# < 65536) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
. . 正在匯入表 "REPCAT$_GENERATED"匯入了 0 行
IMP-00017: 由于 ORACLE 錯誤 2264, 以下陳述句失敗:
"ALTER TABLE "REPCAT$_GENERATED" ADD CONSTRAINT "REPCAT$_GENERATED_OBJ" CHEC"
"K (reason IN (0, 1, 2, 3, 4, 5, 6, 7, 9, 10)) ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 錯誤 2264
ORA-02264: 名稱已被一現有約束條件占用
. . 正在匯入表 "REPCAT$_GROUPED_COLUMN"匯入了 0 行
. . 正在匯入表 "REPCAT$_INSTANTIATION_DDL"匯入了 0 行
. . 正在匯入表 "REPCAT$_KEY_COLUMNS"匯入了 0 行
. . 正在匯入表 "REPCAT$_OBJECT_PARMS"匯入了 0 行
. . 正在匯入表 "REPCAT$_OBJECT_TYPES"
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1017
列 2 GENERATED DDL
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1016
列 2 DUMMY MATERIALIZED VIEW
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1015
列 2 UPDATABLE MATERIALIZED VIEW LOG
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1014
列 2 REFRESH GROUP
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1013
列 2 SYNCHRONOUS MASTER REPGROUP
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1012
列 2 ASYNCHRONOUS MASTER REPGROUP
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1011
列 2 TEMPORARY TABLE
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1005
列 2 SYNCHRONOUS UPDATABLE TABLE
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1004
列 2 ASYNCHRONOUS UPDATABLE TABLE
列 3 00
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1003
列 2 READ ONLY TABLE
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1002
列 2 SITEOWNER
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1001
列 2 USER
列 3 02
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -5
列 2 DATABASE LINK
列 3 01
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 -1
列 2 MATERIALIZED VIEW
列 3 01
列 4
IMP-00019: 由于 ORACLE 錯誤 1 而拒絕行
IMP-00003: 遇到 ORACLE 錯誤 1
ORA-00001: 違反唯一約束條件 (SYSTEM.REPCAT$_OBJECT_TYPE_PK)
列 1 1
列 2 INDEX
列 3 01
列 4
uj5u.com熱心網友回復:
這是把 SYSTEM 的表也匯出來了, exp 時,可以用 owner=u1,u2 , 來確定你要導哪些用戶。PS:用 expdp 逐個用戶不更好嗎 ? 如果是整個服務器遷移,rman 或 冷備份更好。
uj5u.com熱心網友回復:
還要檢查一下用戶權限和字符集uj5u.com熱心網友回復:
imp匯入的時候,不要用full=Y引數,用fromuser= touser=uj5u.com熱心網友回復:
備份與恢復http://www.verejava.com/?id=17173807122159
uj5u.com熱心網友回復:
還是建議使用單個用戶做匯入匯出操作,system用戶下面會包括所有系統表,再匯入到另一個庫的時候就會提是各種已存在表等一系列問題uj5u.com熱心網友回復:
你這不是空庫,而是已經存盤資料的庫吧 ,如果是的話,就dbca洗掉 重建空庫再還原 不造成約束沖突uj5u.com熱心網友回復:
還原庫的時候,相同表名,造成主鍵約束沖突,建議你把庫清空,在還原uj5u.com熱心網友回復:
匯出前期準備:1、創建backup_space表空間:
create tablespace backup_space datafile '+DATA/rac/datafile/backup_space.bdf' size 100M;
注:
+DATA/rac/datafile/ 為檔案存放的位置
backup_space.bdf 為檔案名
2、創建臨時表空間:
create temporary tablespace backup_temp tempfile '+DATA/rac/datafile/backup_temp.dbf' size 50M;
3、創建資料庫用戶backup_user并指定表空間backup_space和臨時表空間backup_temp:
create user backup_user identified by 123456 default tablespace backup_space temporary tablespace backup_temp;
給用戶授權:
grant resource,connect,exp_full_database to backup_user;
4.在作業系統上創建存放匯出檔案的目錄。
mkdir /dump
chown oracle:oinstall /dump
5.使用sqlplus / as sysdba登錄資料庫創建目錄物件:
SQL>CREATE DIRECTORY dump_dir AS '/dump';
查看目錄是否創建成功:
select * from dba_directories;
6.把目錄的讀寫權限給用戶backup_user:
SQL>GRANT READ, WRITE ON DIRECTORY dump_dir TO backup_user;
用exp匯出全庫
exp backup_user/123456 file=/dump/test_full.dmp full=y
用imp匯入全庫
imp sysdba/123456 file=/dump/test_full.dmp
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/55503.html
標籤:基礎和管理
