實用解析dmp檔案內容
-
配置實驗環境:
1.1 生產三個檔案
exp woo/oracle table=dump_table file=1.dmp; expdp woo/oracle tables=dump_table directory=dhome dumpfile=2.dmp; touch 3.dmp
2.建立隨機資料
SQL> create table dump_table as 2 select rownum as id, 3 to_char(sysdate + rownum / 24 / 3600, 'yyyy-mm-dd hh24:mi:ss') as inc_datetime, 4 trunc(dbms_random.value(0, 100)) as random_id, 5 dbms_random.string('x', 20) random_string 6 from dual 7 connect by level <= 10; Table created. SQL> desc dump_table; Name Null? Type ----------------------------------------- -------- ---------------------------- ID NUMBER INC_DATETIME VARCHAR2(19) RANDOM_ID NUMBER RANDOM_STRING VARCHAR2(4000) SQL> select count(*) from dump_table; COUNT(*) ---------- 10
3.生成如下檔案
[oracle@ora11grac1 ~]$ ls -rtl total 212 -rw-r--r-- 1 oracle oinstall 16384 Mar 18 15:06 1.dmp -rw-r----- 1 oracle asmadmin 98304 Mar 18 15:13 2.dmp -rw-r--r-- 1 oracle asmadmin 1071 Mar 18 15:14 export.log -rw-r----- 1 oracle asmadmin 98304 Mar 18 15:14 3.dmp
4.判斷檔案室友哪個版本生成的
[oracle@ora11grac1 ~]$ sed -n 1p 1.dmp EXPORT:V11.02.00
5.判斷檔案型別
SQL> set serveroutput on SQL> declare 2 v_filetype NUMBER; -- 0=unknown 1=expdp 2=exp 3=ext 3 v_info_table sys.ku$_dumpfile_info; -- PL/SQL table with file info 4 begin 5 dbms_datapump.get_dumpfile_info( 6 filename => '1.dmp', 7 directory => upper('dhome'), 8 info_table => v_info_table, filetype => v_filetype); 9 dbms_output.put_line('Filetype : ' || v_filetype); 10 end; 11 / Filetype : 2 SQL> set serveroutput on SQL> declare 2 v_filetype NUMBER; -- 0=unknown 1=expdp 2=exp 3=ext 3 v_info_table sys.ku$_dumpfile_info; -- PL/SQL table with file info 4 begin 5 dbms_datapump.get_dumpfile_info( 6 filename => '2.dmp', 7 directory => upper('dhome'), 8 info_table => v_info_table, filetype => v_filetype); 9 dbms_output.put_line('Filetype : ' || v_filetype); 10 end; 11 / Filetype : 1 PL/SQL procedure successfully completed. SQL> set serveroutput on SQL> declare 2 v_filetype NUMBER; -- 0=unknown 1=expdp 2=exp 3=ext 3 v_info_table sys.ku$_dumpfile_info; -- PL/SQL table with file info 4 begin 5 dbms_datapump.get_dumpfile_info( 6 filename => '3.dmp', 7 directory => upper('dhome'), 8 info_table => v_info_table, filetype => v_filetype); 9 dbms_output.put_line('Filetype : ' || v_filetype); 10 end; 11 / Filetype : 1 PL/SQL procedure successfully completed. SQL> set serveroutput on SQL> declare 2 v_filetype NUMBER; -- 0=unknown 1=expdp 2=exp 3=ext 3 v_info_table sys.ku$_dumpfile_info; -- PL/SQL table with file info 4 begin 5 dbms_datapump.get_dumpfile_info( 6 filename => 'export.log', 7 directory => upper('dhome'), 8 info_table => v_info_table, filetype => v_filetype); 9 dbms_output.put_line('Filetype : ' || v_filetype); 10 end; 11 / Filetype : 0 PL/SQL procedure successfully completed.
6.資料庫字符集,資料庫名稱,作業系統型別,作業系統名稱
[oracle@ora11grac1 ~]$ sed -n 1p 2.dmp \ÒÂÇg€¼uC¡ÈÃë KàS H€"WOO"."SYS_EXPORT_TABLE_01"x86_64/Linux 2.4.xxora11grac1:woo1AL32UTF8 11.02.00.04.00001:001:000001:000001ÿÿ$$
7.判斷檔案所屬表空間或使用者
[oracle@ora11grac1 ~]$ sed -n 2p 1.dmp DWOO
8.匯出方式,USER,TABLE,
[oracle@ora11grac1 ~]$ sed -n 3p 1.dmp RTABLES
9.判斷檔案資料塊大小
[oracle@ora11grac1 ~]$ sed -n 4p 1.dmp 8192
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/20674423/viewspace-2681030/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用GeoTools解析shp檔案內容
- java檔案相關(檔案追加內容、檔案內容清空、檔案內容讀取)Java
- JXL包大解析;Java程式生成excel檔案和解析excel檔案內容JavaExcel
- dmp檔案的做成
- 檔案內容拷貝
- Oracle 控制檔案內容Oracle
- 檔案內容比較
- vim內替換檔案內容
- oracle匯入dmp檔案Oracle
- 檔案內容對比工具
- C#分割檔案內容C#
- git檢視檔案內容Git
- properties檔案內容亂碼
- Linux檔案內容操作Linux
- 檢視控制檔案內容
- dump 轉儲檔案內容
- 提取rpm檔案內容
- 用linux shell逐行讀取文字檔案內容Linux
- 用shell指令碼合併多個檔案內容指令碼
- plsql Oracle匯入dmp檔案SQLOracle
- 使用ln同步檔案內容,支援忽略檔案
- python實現修改xml檔案內容詳解PythonXML
- vite vue-cli 讀取檔案原始內容 使用base64內容的檔案ViteVue
- 用 ABAP 讀取本地文字檔案內容試讀版
- 命令列技巧:分割檔案內容命令列
- php獲取xml檔案內容PHPXML
- node中給檔案追加內容
- mybatis讀取properties檔案內容MyBatis
- js直接列印pdf檔案內容JS
- PowerShell輸出內容到檔案
- 控制檔案包含哪些基本內容
- 檔案內容查詢命令(轉)
- ftp上直接修改檔案內容FTP
- poi解析Excel內容Excel
- python中修改檔案行內容Python
- python操作檔案寫入內容Python
- 如何使用htmlq提取html檔案內容HTML
- 如何編輯PDF檔案的內容?