Oracle數據庫imp和exp的使用

我經常使用的命令: 

1.導入數據命令:imp userid=fkprod/fkprod full=y file=xxx.dmp

2.導出數據庫對象命令:

使用tools--->export user object只能導出數據表腳本不能帶出數據,

或者使用exp user/pwd file=/dir/xxx.dmp log=xxx.log full=y commit=y ignore=y
注意:如果你要遠程登錄到數據庫服務器導出,可以在本地SQLPLUS做如下命令:

>1.第一種方法在SQLPULS:

conn user/pwd@schema

$exp user/pwd file=/dir/xxx.dmp log=xxx.log full=y commit=y ignore=y

>2.在windows操作系統的cmd 命令行窗口中,直接使用imp和exp即可.

>3.在linux下, 以oracle用戶登錄,在終端中直接輸入imp和exp就可以.

3.刪除用戶與其對象:drop user username cascade

4. 給用戶分配角色:GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
   DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
      DBA,CONNECT,RESOURCE,CREATE SESSION  TO 用戶名

5.創建一個用戶:create user "XXXX" identified by "XXXX"  注意:這裏的用戶名和密碼一定要用大寫

 

更多的使用請參考一下幾種方式

以下三種方式:

(1)交互式方式
$ exp        //  然後按提示輸入所需要的參數
(2)命令行方式
$ exp user/pwd@dbname file=/oracle/test.dmp full=y    //  命令行中輸入所需的參數
 
(3)參數文件方式
$ exp parfile=username.par    //  在參數文件中輸入所需的參數
參數文件 username.par 內容 userid=username/userpassword buffer=8192000
compress=n grants=y
file=/oracle/test.dmp full=y
 
3.  三種模式
 
(1)表方式,將指定表的數據導出/導入。
導出:
導出一張或幾張表:
$ exp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1,table2
導出某張表的部分數據
$ exp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1 query=/”where col1=/’…/’
and col2 /<…/”
導入:
導入一張或幾張表
$  imp  user/pwd  file=/dir/xxx.dmp  log=xxx.log  tables=table1,table2  fromuser=dbuser touser=dbuser2 commit=y ignore=y
 
(2)用戶方式,將指定用戶的所有對象及數據導出/導入。
導出:
$ exp user/pwd file=/dir/xxx.dmp log=xxx.log owner=(xx, yy)
只導出數據對象,不導出數據  (rows=n )
$ exp user/pwd file=/dir/xxx.dmp log=xxx.log owner=user rows=n
導入:
$  imp  user/pwd  file=/dir/xxx.dmp  log=xxx.log  fromuser=dbuser  touser=dbuser2
commit=y ignore=y
(3)全庫方式,將數據庫中的所有對象導出/導入導出:
$ exp user/pwd file=/dir/xxx.dmp log=xxx.log full=ycommit=y ignore=y
導入:
$ imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser2

 

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