在客戶端用exp導出數據庫的時候,遇到如下情況
...
....
......
.. 正在導出同義詞 . 正在導出視圖 EXP-00056: 遇到 ORACLE 錯誤 1455 ORA-01455: 轉換列溢出整數數據類型 EXP-00000: 導出終止失敗
在導完表、同義詞、視圖后出現EXP-00056: 遇到 ORACLE 錯誤 1455
這樣的問題我連續遇到兩次。
我查過網上許多帖子,解決方法都不一樣:
第一種:
SQL> connect / as sysdba SQL> @catmetx.sql SQL> @utlrp.sql SQL> exit
此中方法我未去驗證!
第二種:多數說是oracle客戶端版本與數據庫服務器版本不一致的問題
所以我在服務器上做了exp 操作
最終導出成功,但是存在警告!
第一次出現的時候解決了這個問題。
可是針對這種說法我不是很認同,因為在此之前我在這個客服端都成功導出過數據的而且現在都能導出其它用戶的數據,數據庫服務器就一台,環境都一樣,所以覺得應該不是版本的問題。
第三種:
ORA-01455: 轉換列溢出整數數據類型 ,Export 命令會將表的statistics 值轉成成整形。 當這個statistics值超過2^31-1時,就會報這個錯誤。 最后在exp命令后加 “INDEXES=n STATISTICS=none”這兩個參數。 exp 用戶名/口令 file=c:\XXX.dmp INDEXES=n STATISTICS=none
曾經試過針對我這情況沒有作用,如果你的是這種原因導致的,給你個連接參考http://wenku.baidu.com/link?url=YC5ZSOIBg5zlpFlu8ofUd8x3lJj4TuGLz1HHi6DUhnIWJ38tpf7NmN1GmB39GPmHXCrzmtyghza5p0qQOLk0o4-OjulkoxIr2ib9-4KmzK7
第四種:
這種方法我試過沒有成功。
第五種:
物化視圖導致
刪除物化視圖,再對關聯的表做insert操作
成功解決一次,但是我遇到另一次數據庫里面是沒有物化視圖的。
第六種:
有編譯未通過視圖,先刪除即可 ps:並在在網上,發現也有index,trigger導致類似錯誤
此方法我還未證實。
經我在一次導出中出現上述第二種情況時log內容如下:
1、數據庫服務器上導出成功,但有警告!
連接到: Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options 已導出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集
即將導出指定的用戶... . 正在導出 pre-schema 過程對象和操作 . 正在導出用戶 XXX 的外部函數庫名 . 導出 PUBLIC 類型同義詞 . 正在導出專用類型同義詞 . 正在導出用戶 XXX 的對象類型定義 EXP-00097: 對象類型 "XXX"."SYS_PLSQL_75837_219_1" 未處於有效狀態, 不會導出類型 EXP-00097: 對象類型 "XXX"."SYS_PLSQL_75837_145_1" 未處於有效狀態, 不會導出類型 EXP-00097: 對象類型 "XXX"."KU$_COLLECTION_T" 未處於有效狀態, 不會導出類型 EXP-00097: 對象類型 "XXX"."KU$_TABLESPACE_T" 未處於有效狀態, 不會導出類型 即將導出 XXX 的對象... . 正在導出數據庫鏈接 . 正在導出序號 . 正在導出簇定義 . 即將導出 XXX 的表通過常規路徑... . . 正在導出表 AAA導出了 40 行
.
.
.
. 正在導出同義詞 . 正在導出視圖 . 正在導出存儲過程 . 正在導出運算符 . 正在導出引用完整性約束條件 . 正在導出觸發器 . 正在導出索引類型 . 正在導出位圖, 功能性索引和可擴展索引 . 正在導出后期表活動 . 正在導出實體化視圖 . 正在導出快照日志 . 正在導出作業隊列 . 正在導出刷新組和子組 . 正在導出維 . 正在導出 post-schema 過程對象和操作 . 正在導出統計信息 導出成功終止, 但出現警告。
2、客戶端上導出失敗,內容如下:
...
....
......
.. 正在導出同義詞 . 正在導出視圖 EXP-00056: 遇到 ORACLE 錯誤 1455 ORA-01455: 轉換列溢出整數數據類型 EXP-00000: 導出終止失敗
我注意到成功這次有對象無效,給出了提示;
但是失敗這次是未提示有無效對象的。
所以總結得出:這種情況我認為有兩種情況會導致,第一種是由於客服端和服務器端的字符集不一致導致,第二種可能是與無效對象有關。