expdp檔案split再cat後impdp

2021-06-16 08:10:04 字數 959 閱讀 2550

今天在maclean的oracle群裡看到有個傢伙說,expdp 的檔案split 再cat 之後 導不進資料庫,下面是我的實驗結果

注:資料庫的使用者名稱是demo_ls 只有一張表  總的大小不超過1m

$sqlplus / as sysdba

建目錄,為資料幫浦匯出

sql>create directory dmpdir as '/oracle/dmp';

sql> grant read on directory dmpdir to demo_ls;

資料幫浦匯出

$expdp demo_ls dumpfile=expdpdemo.dmp directory=dmpdir schemas=demo_ls;

分割$split -b 330k expdpdemo.dmp expdpdemo_

此時可以看到在/oracle/dmp目錄有多個檔案如expdpdemo_a*

合併$cat expdpdemo_* > expdpdemo_new.dmp

再匯入資料庫

$./impdp crmii/abs directory=dmpdir dumpfile=expdpdemo_new.dmp table_exists_action=replace 

- - relpace 表示當表存在時,先drop,再create。

匯入時有乙個錯誤,是使用者名稱demo_ls已存在,先刪除使用者 drop user demo_ls cascade 再impdp 完全沒問題。

另外再試expdp/impdp之前也試了exp/imp,分割再分離,也沒有問題。

由於資料量較小,測試可能不充分,但我想在大資料量下,這麼分割再合併是沒有問題

再試了一次,把乙個10g左右的庫expdp(不到10分鐘),分割,再合併,發現與原檔案的大小一樣,

$diff -c crmii.dmp crmii_new.dmp

兩則沒有不同之處,所以分割再合併之後,可以正常匯入

split分割檔案

在linux下,使用split命令可以實現檔案的分割,使用 cat 命令來完成分割檔案的合併 譬如,在下面 split 命令列中的 12m 表示分割後的每個檔案為 12mb,filename 為待分割檔案,分割後的檔案自動命名為 xaa,xab,split 按指定的行數截斷檔案 格式 split n...

split檔案切片

切成小檔案,然後通過其他方法put get.linux中的切片使用的是splie命令.常用方法 split b 200m 小片的大小上限 file name 要切的檔案 file name 切分的小片的字首,字尾是命令自定義的,改不了,一般是 a z 2結尾 注意 1.不帶 b,導致預設只有250k...

split命令 檔案切割

split命令 檔案切割 有時候檔案過大,導致不能正常使用,可以用split進行切割。命令引數 split 選項 要切割的檔案 輸出檔名字首 a,suffix length n 切割檔案的字尾的位置,default 為2 b,bytes size 指定塊的大小,可以指定size的單位,b表示512位...