oracle dmp exp


  1.1 exp 使用方法及實例
  
  exp/imp 爲一種數據庫備份恢復工具也可以作爲不同數據庫之間傳遞數據的工具兩個數據庫所在的操作系統可以不同exp 可以將數據庫數據導出爲二進制文件imp 可以將導出的數據文件再導入到相同的數據庫或不同的數據庫
  
  數據庫導出有四種模式full(全庫導出), owner(用戶導出), table(表導出), tablespace(表空間導出).
  
  full( 全庫導出): 導出除ORDSYS,MDSYS,CTXSYS,ORDPLUGINS,LBACSYS 這些系統用戶之外的所有用戶的數據.
  
  owner( 用戶導出): 導出某個或某些用戶的所有權限和數據.
  
  tables( 表導出): 導出某些表(可以是不同用戶的)的結構和數據.
  
  tablespace( 表空間導出):表空間導出數據.
  
  執行exp 有三種方法:交互式,命令行和參數文件
  
  交互式:直接輸入exp 命令用戶可以按照exp 提示的信息一步一步操作,比較簡單.
  
  命令行:輸入命令行exp username/password parameter=value.
  
  參數文件:輸入命令行exp username/password parfile=filename exp 所需的參數從參數文件引入.
  
  參數是可以重複的優先級爲命令行優於參數文件後面的參數值覆蓋於前面的參數值.
  
  下面介紹一些常用的參數沒有標明的表示exp/imp 都適用imp 的參數不再單獨介紹.
  
  1.1.1 參數介紹
  
  buffer 緩衝區大小如果此值設爲0 則一次只導入一條記錄對數據量大的導出可以設置較大一般缺省值即可.
  
  file 導出的文件列表可以指定一個或多個文件名缺省擴展名爲.dmp 缺省導出文件名爲expdat.dmp.
  
  filesize exp 導出文件的最大字節數超出時從文件列表中獲取下一個文件名,沒有,則提示輸入新的文件名.
  
  help 顯示export 參數幫助信息
  
  inctype 增量備份的類型:complete(完全),cumulative(累積)和incremental (增量).
  
  只可以在全庫導出模式下纔可以做完全累積或增量導出累積導出只導出自上次累積導出或完全導出以來已經修改的表增量導出只導出自上次增量累積或完全導出以來已經修改的表完全導出將數據庫中全部對象都導出不管是否以及何時被修改.
  
  log:日誌文件,一般如果以命令行導入時,將log 設置上比較好可以看,到所有的導入信息,導入信息哪兒出錯,導入了那些數據庫對象.
  
  show(imp):只是用來顯示備份數據文件的內容.
  
  full:爲Y 時表示在全庫方式下導出缺省爲N.
  
  tables:導出的表列表可以指定一個或多個表名.
  
  fromuser(imp):可以將導出文件中的一個用戶模式的數據對象導入爲另一個用戶模式的對象此參數表示導出文件中的用戶模式.
  
  touser(imp):此參數表示導入到數據庫中時使用的用戶模式對象譬如使用全庫或者用戶模式導出cams 用戶的所有對象到一個文件中導入時需要將用戶模式名稱改爲cams1,此時fromuser 爲cams,touser 爲cams1.
  
  1.1.2 典型用法
  
  1. 交互式-用戶導出
  
  交互式導出比較簡單,這裏只舉用戶導出一種用法進行說明,全庫導出和表導出比較簡單不再列出.
  
  [oracle@localhost script]$ exp
  Export: Release 8.1.7.4.0 - Production on Fri Feb 6 15:01:07 2004
  (c) Copyright 2000 Oracle Corporation. All rights reserved.
  
  Username: cams --此處輸入啓動導出的用戶
  
  Password: --此處輸入相應的密碼
  
  Connected to : Oracle 8i Enterprise Edition Release 8.1.7.4.0 -Production
  JServer Release 8.1.7.4.0 - Production
  
  Enter array fetch buffer size: 4096 >--此處需要輸入buffer 值交互式導出時大多數參數都有缺省值,如果選用缺省值,直接回車即可.
  
  Export file: expdat.dmp > 20040206.dmp --此處輸入導出文件名
  
  (1)E(ntire database), (2)U(sers), or (3)T(ables): (2)U > --此處輸入導出模式,全庫導出,用戶導出還是表導出,缺省爲用戶導出.
  
  Export grants (yes/no): yes > --是否導出授權通常選擇yes
  
  Export table data (yes/no): yes > --是否導出表中數據如果選擇no則只導出表的結構通常選擇yes
  
  Compress extents (yes/no): yes > --選擇yes
  
  Export done in ZHS16CGB231280 character set and ZHS16CGB231280 NCHAR
  character set
  About to export specified users ...
  
   User to be exported : (RETURN to quit) > cams --此處輸入需要導出的用戶,如果需要導出多個用戶的數據,exp 會一直提示用戶,直至用戶輸入了..
  
  User to be exported : (RETURN to quit) > .. --此處輸入".."
  
  . exporting pre-schema procedural objects and actions
  . exporting foreign function library names for user CAMS
  . exporting object type definitions for user CAMS
  About to export CAMS's objects ...
  . exporting database links
  . exporting sequence numbers
  . exporting cluster definitions
  . about to export CAMS's tables via Conventional Path ...
  
  . . exporting table TBL_BILLDETAIL_SWITCH 23 rows exported
  . . exporting table TBL_BLACKLIST 0 rows exported
  . . exporting table TBL_CHARGE_CARD 11 rows exported
  . . exporting table TBL_ERROR_CODE 37 rows exported
  . . exporting table TBL_EXPORT 2 rows exported
  . . exporting table TBL_LOG 3008 rows exported
  ......
  . exporting synonyms
  . exporting views
  
  . exporting stored procedures
  . exporting operators
  . exporting referential integrity constraints
  . exporting triggers
  . exporting indextypes
  . exporting bitmap, functional and extensible indexes
  . exporting posttables actions
  . exporting snapshots
  . exporting snapshot logs
  . exporting job queues
  . exporting refresh groups and children
  . exporting dimensions
  . exporting post-schema procedural objects and actions
  . exporting statistics
  Export terminated successfully without warnings.
  
  說明:
  
  (1) 在交互式導出或導入時,如果輸錯值,不再想進行下面的步驟,但不知如何退出此時請用". "
  
  2. 命令行-全庫導出
  
  exp userid=cams/cams@cams full=y file=(/tmp/2004020601.dmp,
  /tmp/2004020602.dmp, /tmp/2004020603.dmp) filesize=2GB
  log=/tmp/20040206.log
  
   該命令導出全庫數據,導出到多個文件中,每個文件最大2GB, exp 只生成最少的導出文件,譬如導出的數據不足2GB, exp 只生成/tmp/2004020601.dmp 如果file 列表中的文件太少,不能存放所有的導出數據,exp 會提示用戶輸入文件名,導出過程記錄日誌.
  
  說明:
  
  (1) 由於linux 文件系統最大隻支持2G 的文件,所以如果數據庫數據量大超過2G 時導出將會出錯,所以file 參數可以設置多個文件.
  
  3. 命令行用戶導出
  
  exp userid=cams/cams@cams owner=cams file=(/tmp/2004020601.dmp,
  /tmp/2004020602.dmp, /tmp/2004020603.dmp) filesize=2GB
  log=/tmp/20040206.log
  
  該命令導出cams 用戶數據導出到多個文件中每個文件最大2GB 導出過程記錄日誌
  
  4. 命令行表導出
  
  exp userid=cams/cams@cams tables=(tbl_log, tbl_user _log)
  file=(/tmp/2004020601.dmp, /tmp/2004020602.dmp) filesize=2GB
  log=/tmp/20040206.log
  
  該命令導出cams 用戶的兩個表的數據,導出到多個文件中,每個文件最大2GB,導出過程記錄日誌.
  
  5. 命令行-完全導出
  
  exp userid=cams/cams@cams full=y inctype=complete
  file=(/tmp/2004020601.dmp, /tmp/2004020602.dmp, /tmp/2004020603.dmp)
  filesize=2GB log=/tmp/20040206.log
  
  該命令完全導出全庫數據,導出到多個文件中每個文件最大2GB,導出過程記錄日誌.
  
  說明:
  
  (1) 全庫導出時,增量導出類型缺省爲(complete)完全,所以例5 和例2導出的結果是完全一樣的.
  
  6. 命令行-累積導出
  
  exp userid=cams/cams@cams full=y inctype=cumulative
  file=(/tmp/2004020601.dmp, /tmp/2004020602.dmp) filesize=2GB
  log=/tmp/20040206.log
  
  該命令累積導出全庫數據,導出到多個文件中,每個文件最大2GB,導出過程記錄日誌.
  
  說明:
  
  (1) 如果選擇了增量導出類型,則必需選擇full=y,即只能在全庫導出模式下進行完全累積或增量導出.
  
  7. 命令行-增量導出
  
  exp userid=cams/cams@cams full=y inctype=incremental
  file=(/tmp/2004020601.dmp, /tmp/2004020602.dmp) filesize=2GB
  log=/tmp/20040206.log
  
  該命令累積導出全庫數據,導出到多個文件中,每個文件最大2GB,導出過程記錄日誌.
  
  8. 參數文件-用戶導出
  
  exp parfile=cams_exp.par
  <

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章