IMP EXP常用引數,實用例子

lenx2000發表於2010-05-16

IMP匯入實用例子

1. 獲取幫助

 imp help=y

2. 匯入一個完整資料庫

 imp system/manager file=bible_db log=dible_db full=y ignore=y

3. 匯入一個或一組指定使用者所屬的全部表、索引和其他物件

 imp system/manager file=seapark log=seapark fromuser=seapark imp 
 system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)

4. 將一個使用者所屬的資料匯入另一個使用者

 imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copy
 imp system/manager file=tank log=tank fromuser=(seapark,amy)
 touser=(seapark1, amy1)

5. 匯入一個表

 imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)

6. 從多個檔案匯入

 imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4) 
log=paycheck, filesize=1G full=y

7. 使用引數檔案

 imp system/manager parfile=bible_tables.par

bible_tables.par引數檔案:

 #Import the sample tables used for the Oracle8i Database Administrator's 
Bible. fromuser=seapark touser=seapark_copy file=seapark log=seapark_import

8. 增量匯入

 imp system./manager inctype= RECTORE FULL=Y FILE=A 

-------------------------------------------------------------------------------------------------------------------------------------------

EXP匯出實用例子

1. 獲取幫助
    exp help=y
  
  2. 匯出一個完整資料庫
    exp system/manager file=bible_db log=dible_db full=y
  
  3. 匯出資料庫定義而不匯出資料
    exp system/manager file=bible_db log=dible_db full=y rows=n
  
  4. 匯出一個或一組指定使用者所屬的全部表、索引和其他物件
    exp system/manager file=seapark log=seapark wner=seapark
    exp system/manager file=seapark log=seapark wner=(seapark,amy,amyc,harold)
  注意:在匯出使用者時,儘管已經得到了這個使用者的所有物件,但是還是不能得到這些物件引用的任何同義詞。解決方法是用以下的SQL*Plus命令建立一個指令碼檔案,執行這個指令碼檔案可以獲得一個重建seapark所屬物件的全部公共同義詞的可執行指令碼,然後在目標資料庫上執行該指令碼就可重建同義詞了。
  
    SET LINESIZE 132
    SET PAGESIZE 0
    SET TRIMSPOOL ON
    SPOOL c:\seapark.syn
    SELECT 'Create public synonym '||synonym_name
    ||' for '||table_owner||'.'||table_name||';'
    FROM dba_synonyms
    WHERE table_owner = 'SEAPARK' AND wner = 'PUBLIC';
    SPOOL OFF
  
  5. 匯出一個或多個指定表
    exp seapark/seapark file=tank log=tank tables=tank
    exp system/manager file=tank log=tank tables=seapark.tank
    exp system/manager file=tank log=tank tables=(seapark.tank,amy.artist)
  
  6. 估計匯出檔案的大小
  全部表總位元組數:
  SELECT sum(bytes)
  FROM dba_segments
  WHERE segment_type = 'TABLE';
  
  seapark使用者所屬表的總位元組數:
  SELECT sum(bytes)
  FROM dba_segments
  WHERE wner = 'SEAPARK'
  AND segment_type = 'TABLE';
  
  seapark使用者下的aquatic_animal表的位元組數:
  SELECT sum(bytes)
  FROM dba_segments
  WHERE wner = 'SEAPARK'
  AND segment_type = 'TABLE'
  AND segment_name = 'AQUATIC_ANIMAL';
  
  7. 匯出表資料的子集(oracle8i以上)
  NT系統:
  
  exp system/manager query='Where salad_type='FRUIT'' tables=amy.salad_type
    file=fruit log=fruit
  UNIX系統:
  
  exp system/manager query=\"Where salad_type=\'FRUIT\'\" tables=amy.salad_type
    file=fruit log=fruit
  
  8. 用多個檔案分割一個匯出檔案
    exp system/manager
    file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)
    log=paycheck, filesize=1G tables=hr.paycheck
  
  9. 使用引數檔案
    exp system/manager parfile=bible_tables.par
  bible_tables.par引數檔案:
  
    #Export the sample tables used for the Oracle8i Database Administrator's Bible.
    file=bible_tables
    log=bible_tables
    tables=(
    amy.artist
    amy.books
    seapark.checkup
    seapark.items
    )
  
  10. 增量匯出
  “完全”增量匯出(complete),即備份整個資料庫
  exp system/manager inctype=complete file=990702.dmp
  “增量型”增量匯出(incremental),即備份上一次備份後改變的資料
  exp system/manager inctype=incremental file=990702.dmp
  “累計型”增量匯出(cumulative),即備份上一次“完全”匯出之後改變的資料
  exp system/manager inctype=cumulative file=990702.dmp

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11134849/viewspace-662814/,如需轉載,請註明出處,否則將追究法律責任。

相關文章