問題描述:
在進行數據庫備份時候,導出dmp數據出現““ORA-01455: 轉換列溢出整數數據類型”的錯誤
Oracle版本號為11.2.0.1,操作系統為Windows Server2008R2
問題排查解決:
換電腦以及服務器嘗試,存在同樣問題,在網上查詢相關資料,發現問題原因主要有下面幾個方面,進行了一一排除。
1、存在空表,檢查表中有數據,且沒有特殊的數據類型(blob,clob等),就是一個普通的表,該問題排除;
2、統計信息問題,修改使用導出語句進行導出,添加Direct=y INDEXES=n STATISTICS=none等參數,問題依舊;
3、客戶端和服務端版本不對應問題,我這里本地不存在這個問題,可以排除;
4、數據本身問題,檢查數據無錯誤,未發現異常;
5、可能關聯有物化視圖、快照等導致,經檢查,無相關內容,可以排除。
最終,未發現根本原因,通過expdb命令方式導出,導出正常,如果有遇到同樣情況的可以參考一下,expdb命令在此不再進行詳細說明。
補充:下面看下ORACLE 11g 導出數據的操作步驟:
ORACLE 11g 導出 表的時候 不會導出空表
導出空表操作步驟 :(使用PLSQL)
1、打開SQL window 執行下面的 SQL
1
2
3
|
Select 'alter table ' ||table_name|| ' allocate extent;' from user_tables where segment_created = 'NO' UNION ALL Select 'alter table ' ||table_name|| ' allocate extent;' from user_tables where num_rows=0 or num_rows is null ; |
2、獲取到查詢的數據,然后選擇獲取最后頁(Alt+End),選中全部結果,復制。
3、粘貼到Command,然后執行。
這是對空表進行設定,這樣在導出的時候就不會忽略空表。
到此這篇關于解決Oracle 11g 導出數據報 “ORA-01455: 轉換列溢出整數數據類型”的問題的文章就介紹到這了,更多相關Oracle 11g 導出數據報 “ORA-01455內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://www.cnblogs.com/Jingkunliu/archive/2021/12/09/15668179.html