真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Oracle常用導(dǎo)出導(dǎo)出命令及性能效率對(duì)比

說明

公司主營(yíng)業(yè)務(wù):網(wǎng)站制作、成都做網(wǎng)站、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出喀左免費(fèi)做網(wǎng)站回饋大家。

Oracle導(dǎo)入導(dǎo)出命令主要有EXPDP和IMPDP、EXP和IMP,區(qū)別如下:EXP和IMP是客戶端工具程序,它們既可以在客戶端使用,也可以在服務(wù)端使用。EXPDP和IMPDP是服務(wù)端的工具程序,他們只能在ORACLE服務(wù)端使用,不能在客戶端使用。IMP只適用于EXP導(dǎo)出的文件,不適用于EXPDP導(dǎo)出文件;IMPDP只適用于EXPDP導(dǎo)出的文件,而不適用于EXP導(dǎo)出文件。expdp或impdp命令時(shí),可暫不指出用戶名/密碼@實(shí)例名as 身份,然后根據(jù)提示再輸入,如:expdp schemas=scott dumpfile=test.dmp DIRECTORY=testdata; 兩個(gè)命令都直接在CMD命令中執(zhí)行。

 

一 、EXPDP和IMPDP命令

1.1、創(chuàng)建邏輯目錄,該命令不會(huì)在操作系統(tǒng)創(chuàng)建真正的目錄,最好以system等管理員創(chuàng)建。

 create directory testdata  as 'd:\test\dump';

查看管理理員目錄(同時(shí)查看操作系統(tǒng)是否存在,因?yàn)镺racle并不關(guān)心該目錄是否存在,如果不存在,則出錯(cuò))

select * from dba_directories;

給scott用戶賦予在指定目錄的操作權(quán)限,最好以system等管理員賦予。

grant read,write on directory testdata to scott;

 

1.2、導(dǎo)出數(shù)據(jù)

1)按用戶導(dǎo)

expdp scott/tiger@orcl schemas=scott dumpfile=test.dmp DIRECTORY=testdata ;

2)并行進(jìn)程parallel

expdp scott/tiger@orcl directory=testdata  dumpfile=test.dmp parallel=40 job_name=testjob

3)按表名導(dǎo)

expdp scott/tiger@orcl TABLES=emp,dept dumpfile=test.dmp DIRECTORY=testdata ;

4)按查詢條件導(dǎo)

expdp scott/tiger@orcl directory=testdata dumpfile=test.dmp Tables=emp query='WHERE deptno=20';

5)按表空間導(dǎo)

expdp system/manager DIRECTORY=testdata DUMPFILE=test.dmp TABLESPACES=temp,example;

6)導(dǎo)整個(gè)數(shù)據(jù)庫(kù)

expdp system/manager DIRECTORY=testdata DUMPFILE=full.dmp FULL=y;

 

1.3、導(dǎo)入數(shù)據(jù)

1)導(dǎo)到指定用戶下

impdp scott/tiger DIRECTORY=testdata DUMPFILE=test.dmp SCHEMAS=scott;

2)改變表的owner

impdp system/manager DIRECTORY=testdata DUMPFILE=test.dmp TABLES=scott.dept REMAP_SCHEMA=scott:system;

3)導(dǎo)入表空間

impdp system/manager DIRECTORY=testdata DUMPFILE=test.dmp TABLESPACES=example;

4)導(dǎo)入數(shù)據(jù)庫(kù)

impdb system/manager DIRECTORY=testdata DUMPFILE=full.dmp FULL=y;

5)追加數(shù)據(jù)

impdp system/manager DIRECTORY=testdata DUMPFILE=test.dmp SCHEMAS=system TABLE_EXISTS_ACTION

 

二、EXP和IMP命令

2.1、EXP命令

有三種主要的方式(完全、用戶、表)    
1、完全:    
EXP SYSTEM/MANAGER BUFFER=64000 file=D:\all.dmp log=D:\all.log FULL=Y    
如果要執(zhí)行完全導(dǎo)出,必須具有特殊的權(quán)限


2、用戶模式:    
EXP test/test BUFFER=64000 FILE=D:\test.DMP log=D:\test.log OWNER=test

這樣用戶test的所有對(duì)象被輸出到文件中。


3、表模式:    
EXP test/test    BUFFER=64000 FILE=D:\test.DMP log=D:\test.log OWNER=test TABLES=(test)    這樣用戶test的表test就被導(dǎo)出


2.2、IMP命令   
具有三種模式(完全、用戶、表)    
1、完全:    
 IMP SYSTEM/MANAGER BUFFER=64000 FILE=D:\FULL.DMP log=D:\impfull.log FULL=Y

2、用戶模式:    
 IMP test/test    BUFFER=64000 FILE=D:\test.DMP log=D:\imptest.log FROMUSER=test TOUSER=test    
 這樣用戶test的所有對(duì)象被導(dǎo)入到文件中。必須指定FROMUSER、TOUSER參數(shù),這樣才能導(dǎo)入數(shù)據(jù)。

3、表模式:    
 EXP test/test    BUFFER=64000 FILE=D:\test.DMP log=D:\imptest.log OWNER=test TABLES=(test)    
這樣用戶test的表test就被導(dǎo)入。

 

2.3  關(guān)于參數(shù)ignore=y

如果用了參數(shù)ignore=y, 會(huì)把exp文件內(nèi)的數(shù)據(jù)內(nèi)容導(dǎo)入;如果表有唯一關(guān)鍵字的約束條件, 不合條件將不被導(dǎo)入;如果表沒有唯一關(guān)鍵字的約束條件, 將引起記錄重復(fù)

解釋:

當(dāng)要導(dǎo)入數(shù)據(jù)庫(kù)中已經(jīng)存在了某個(gè)表(test),如果該表沒有唯一性約束,那么在導(dǎo)入時(shí)加參數(shù)ignore=y,則會(huì)把數(shù)據(jù)完全導(dǎo)入到表中,而且不報(bào)錯(cuò)。  
當(dāng)表已經(jīng)存在了唯一性約束,特別是主鍵的約束,那么在導(dǎo)入時(shí),只導(dǎo)入主鍵中不存在的記錄. 導(dǎo)入過程中會(huì)有警告.    
利用這個(gè)原則可以做一個(gè)增量導(dǎo)入.

三、性能效率對(duì)比(直接引用別人的文章)

3.1 導(dǎo)出性能對(duì)比

EXP常規(guī)模式、EXP直接路徑模式和EXPDP三種方式導(dǎo)出的性能對(duì)比

1) 首先是EXP的常規(guī)路徑導(dǎo)出:

exp zhejiang/zhejiang file=/data1/zj_regular.dmp buffer=20480000

常規(guī)EXP導(dǎo)出方式執(zhí)行了1小時(shí)24分鐘。

 

2) 直接路徑導(dǎo)出方式:

exp zhejiang/zhejiang file=/data1/zj_direct.dmp buffer=20480000

recordlength=65535 direct=y

直接路徑導(dǎo)入用時(shí)18分鐘,比常規(guī)路徑導(dǎo)出速度有一個(gè)明顯的提高。

 

3) 數(shù)據(jù)泵的導(dǎo)出速度。

expdp zhejiang/zhejiang dumpfile=zj_datapump.dp directory=d_test schemas=zhejiang

數(shù)據(jù)泵的導(dǎo)出時(shí)間僅用了14分鐘,比直接路徑導(dǎo)入方式還快了20%多。而且觀察三個(gè)導(dǎo)出文件的大小可以發(fā)現(xiàn),導(dǎo)出速度越快對(duì)應(yīng)的文件也越小,其中數(shù)據(jù)泵的導(dǎo)出方式得到的文件要比EXP方式小將近1.5G。

 

3.2 導(dǎo)入性能對(duì)比

IMP和IMPDP導(dǎo)入性能對(duì)比

1) IMP的導(dǎo)入速度:

imp zhejiang/zhejiang file=/data1/zj_regular.dmp full=y buffer=20480000 log=/data1/zj_regular.log

IMP導(dǎo)入花費(fèi)了3小時(shí)17分鐘,

 

2) IMPdp的導(dǎo)入速度:

impdp zhejiang/zhejiang DUMPFILE=zj_datapump.dp DIRECTORY=d_test FULL=y LOGFILE=zj_datapump.log

數(shù)據(jù)泵的導(dǎo)入操作居然花了3個(gè)小時(shí)8分鐘的時(shí)間,和IMP的導(dǎo)入速度十分接近,看來并非所有情況下都像Oracle描述的那樣,數(shù)據(jù)泵的導(dǎo)入比普通導(dǎo)入效率有大幅度的提高。

 

測(cè)試中發(fā)現(xiàn)IMPDP的導(dǎo)入速度和IMP導(dǎo)入速度相差無幾。而Oracle在介紹數(shù)據(jù)泵的時(shí)候,提到IMPDP的導(dǎo)入速度最高是IMP的10倍。不過好在IMPDP還是可以優(yōu)化調(diào)整的,那就是通過設(shè)置PARALLEL來提高IMPDP的并行度。

首先還是看一下CPU的數(shù)量:

SQL> show parameter cpu

由于數(shù)據(jù)庫(kù)服務(wù)器的CPU個(gè)數(shù)為2,下面嘗試設(shè)置PARALLEL為2來進(jìn)行導(dǎo)入

impdp zhejiang/zhejiang DUMPFILE=zj_datapump.dp DIRECTORY=d_test FULL=y LOGFILE=zj_datapump.log parallel=2

采用并行度為2的導(dǎo)入方式,發(fā)現(xiàn)速度果然提高了很多。并行度為1的導(dǎo)入速度是3小時(shí)8分鐘,而現(xiàn)在用了不到2個(gè)半小時(shí)。

由于并行度設(shè)置不應(yīng)該超過CPU數(shù)的2倍,因此嘗試平行度3和4的導(dǎo)入,導(dǎo)入時(shí)間和并行度2十分接近。看來已經(jīng)無法再使用通過提高并行度的方法來提高性能了。

1) 先看直接導(dǎo)出的性能:

$ expdp zhejiang/zhejiang directory=d_test dumpfile=zhejiang.dp

整個(gè)導(dǎo)出操作大概用了14分半,

 

2) 嘗試使用并行度2進(jìn)行導(dǎo)出,這時(shí)仍然設(shè)置一個(gè)導(dǎo)出的數(shù)據(jù)文件:

$ expdp zhejiang/zhejiang directory=d_test dumpfile=zhejiang_p2_1file.dp parallel=2

整個(gè)導(dǎo)入過程不到14分鐘,不過這個(gè)性能的提升實(shí)在不是很明顯。不過這是有原因的,由于設(shè)置了并行度,兩個(gè)進(jìn)程在同時(shí)執(zhí)行導(dǎo)出操作,但是二者要將導(dǎo)出的數(shù)據(jù)寫入同一個(gè)數(shù)據(jù)文件中,因此必然會(huì)導(dǎo)致資源的爭(zhēng)用

 

3) 仍然使用并行度2,但是同時(shí)設(shè)置兩個(gè)數(shù)據(jù)文件再次檢查導(dǎo)出性能:

$ expdp zhejiang/zhejiang directory=d_test dumpfile=zhejiang_p2_2file1.dp,zhejiang_p2_2file2.dp parallel=2

這次導(dǎo)出僅僅用了10分半,導(dǎo)出的效率大大的提高。

 

4) 測(cè)試一下并行度4,分別導(dǎo)出到4個(gè)數(shù)據(jù)文件中:

用了9分鐘整導(dǎo)出完成,設(shè)置成并行度4仍然可以獲得一定的性能提升,但是并不明顯了,這主要是由于整個(gè)性能的瓶頸已經(jīng)不是單個(gè)進(jìn)程的處理能力,多半性能的瓶頸已經(jīng)變成了磁盤IO瓶頸,此時(shí)單單靠增加并行度已經(jīng)無法明顯提升性能了。


本文標(biāo)題:Oracle常用導(dǎo)出導(dǎo)出命令及性能效率對(duì)比
文章地址:http://weahome.cn/article/ppjpis.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部