EXP-IMP用戶對象導出導入方法

前言:數據庫

最近,客戶方要求天天定時導出數據庫某個用戶對象數據,方便出錯時用於數據恢復或用於調用數據。因爲客戶生產環境的數據庫爲非歸檔模式,數據量比較小,最後採用古老的exp/imp導出導入方法。下面主要講解一下EXP/IMP用戶對象導出導入的使用方法。windows

正文:session

操做系統windows server 2003  oracle10goracle

EXP用戶對象導出操做:ide

oracle客戶端配置tnsnames.ora工具

canway =spa

 (DESCRIPTION =操作系統

   (ADDRESS_LIST =命令行

     (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.2.43)(PORT = 1521))日誌

    )

   (CONNECT_DATA =

     (SERVICE_NAME = ORCL)

    )

  )

使用EXP用戶對象導出的方法比較簡單:

打開cmd窗口,執行如下命令:

exp system/canway@canway owner=用戶名 file=*.dmp log=*.log compress=y direct=nrows=y

#標註:owner:須要導出的用戶名compress 導入一個extent (Y)   DIRECT:直接路徑 (N)  ROWS 導出數據行 (Y)

 

IMP用戶對象導入操做:

因爲imp導入用戶對象數據,不會進行覆蓋,故導入以前須要作如下操做:

1.查看用戶對應默認表空間:

select username,DEFAULT_TABLESPACE from dba_users;

 

2.刪除用戶並刪除此用戶名下的全部表和視圖(不刪除用戶所在的表空間):

drop user username cascade;

(若該用戶正在運行,須要KILL掉會話

select sid,serial# from v$session where username='user_name';

 

alter system kill session 'sid,serial';

 

3.重建以前的用戶和密碼:

create user 用戶名 identified by 密碼 default tablespace 表空間名;

(查找用戶對應的默認表空間:

 select username,DEFAULT_TABLESPACE from dba_users;

 

4.賦予用戶適當的權力

grant connect,resource,dba to 用戶名;

 

5.對用戶對象數據導入:

運行在命令行的窗口下

imp system/canway@canway file=I:\backup\*.dmplog=I:\backup\*.log  fromuser=導出的用戶名 touser=導入的用戶名;

#註釋:file=導出文件存放的直接路徑和名稱.dmp log=導入過程當中產生的日誌追蹤log

Fromuser:導出的文件全部者touser:即將須要導入到哪一個用戶名。

 

總結:Exp/Imp導出導入是一個好的轉儲工具,特別是在小型數據庫的轉儲,表空間的遷移,表的抽取,檢測邏輯和物理衝突等中有不小的功勞,本次主要介紹用戶對象導出導入的方法。而對於愈來愈大的數據庫,特別是TB級數據庫和愈來愈多數據倉庫的出現,EXP/IMP愈來愈力不從心了,這個時候,數據庫的備份都轉向了RMAN和第三方工具。

相關文章
相關標籤/搜索