Oracle匯入 匯出exp imp

2021-12-30 11:46:43 字數 1555 閱讀 1630

export 匯出資料,dmp檔案,其實就是select。

import 匯入資料,其實就是insert

缺陷:匯出的時候需要全表匯出,速度慢,不是實時,而且是邏輯備份

1:exp

exp匯出分為一下幾種模式

表模式: 匯出某個使用者下指定的表

使用者模式: 匯出某個使用者下所有的物件

資料庫模式: 匯出除sys以外資料庫裡所有的物件,exp_full_database許可權

可傳輸表空間: 匯出某個表空間所有物件

exp語句使用幫助:$ exp help=y

1.1:匯出某個使用者下指定的表

$ exp doiido/doiido file=doiido.dmp tables=(doiido,boy) log=doiido.log

1.2:匯出某個使用者下所有的物件

$ exp doiido/doiido@doiido file=doiido.dmp owner=doiido log=doiido.log

1.3:匯出整個資料庫(除了sys使用者下的資料字典)

sql> grant exp_full_database to doiido;

$ exp doiido/doiido file=doiido.dmp full=y log=doiido.log

1.4:匯出表空間

$ exp system/doiido@orcl file=doiido.dmp tablespaces=(doiido)

1.5:在windows下遠端匯出

c:\windows\system32>exp

doiido/[email protected]:1521/doiido file=d:\doiido.dmp tables=boy log=d:\doiido.log

匯出的兩種方式

傳統路徑:使用sql語句查詢方式,需要經過快取

直接路徑:使用資料塊抽取方式,direct=y

2:imp匯入

1:匯入某個使用者指定的表

$ imp doiido/doiido file=doiido.dmp tables=(doiido,boy)

log=doiido.log

2:匯入使用者test所有的物件到doiido

$ imp doiido/doiido file=doiido.dmp fromuser=test touser=doiido log=doiido.log

執行匯入的順序

建立表結構

匯入表的資料

建立相關索引

匯入觸發器

對匯入的表啟用完整性約束

建立所有位圖、函式以及其他索引

imp的時候如果匯入的表已經存在

ignore=y ##表示匯入的時候忽略同名物件,匯入的操作是追加

3:其他

(1)匯入匯出的過程可以更換使用者,但是必須有相同的表空間在,這樣匯入才能夠成功

(2)匯出的時候會有wainings是正常的,因為有些索引或主外來鍵之類的沒有被匯出

(3)匯入匯出的時候還需要注意字符集的必須是相同或者是子集

oracle匯出,匯入

匯出,在dos下執行 1.exp username userpassword databasename 可以是資料庫也可是遠端的,如username userpassword caac135 2.enter array fetch buffer size 4096 回車 3.export file ...

oracle匯入匯出

sqlplus system system egov create directory dump dir as d dbback exit expdp system system egov directory dump dir dumpfile urbanyw.dmp schemas urbanyw...

Oracle匯入匯出

最簡單 exp duser duser remote localinstancename owner duser file file path dmp imp duser duser remote localinstancename file file path dmp 詳細出處參考 win10下o...