|
導讀數據庫,簡而言之可視為電子化的文件柜——存儲電子文件的處所,用戶可以對文件中的數據進行新增、截取、更新、刪除等操作。所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應... 數據庫,簡而言之可視為電子化的文件柜——存儲電子文件的處所,用戶可以對文件中的數據進行新增、截取、更新、刪除等操作。所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應用程序彼此獨立的數據集合。 由于工程需要經常將客戶的現場數據導出到公司的開發環境中,隨著客戶現場數據量的不斷增大,原先使用的導出導入的方法需要花費越來越長的時間,所以測試一下RMAN的效率,驗證是否能用恢復RMAN備份的方法來代替以往的EXP/IMP方法。原本想過用傳輸表空間的方法,但是由于我們通常在創建數據庫的時候就給業務所用的表空間創建了很大的數據文件,這樣在傳輸表空間的copy數據文件的步驟上會花費很長的時間,所以還是決定測試一下RMAN了。 測試目的: 實現對于JHJKREC用戶的數據轉移。在10.101.48.71機器上測試。 測試環境: P42.8G單CPU,1G內存,80G單硬盤,Windows 2000 Server,Oracle817跟JHJK用戶相關的數據文件的總共大小為:21.4G 其中JHJKREC用戶的對象總共大小為:2.1G 1。RMAN作full備份,用時20分鐘,生成文件大小5.47GEXP作JHJKREC用戶數據導出,用時2分20秒,生成文件大小546M 2。RMAN作數據恢復,用時23分鐘(包括restore數據文件,recover數據庫)IMP作JHJKREC用戶數據導入,用時55分鐘 3。RMAN備份在非歸檔模式下需要關閉數據庫然后啟動數據庫到mount狀態EXP在非歸檔模式下不需要關閉數據庫,但是數據表本身是不一致的 結論: 利用RMAN備份的時間明顯長于EXP的時間,備份出的文件也遠大于EXP出的文件但是恢復的時間卻要少于IMP所需要的時間。利用RMAN恢復,還需要備份控制文件,而且由于是非歸檔模式,還需要檢查當前能夠恢復到的最大SCN,然后在SQLPLUS中ecover database until change scn,然后再alter database open resetlogs,整個操作比EXP/IMP繁瑣,對于現場業務人員來說可能較為困難,所以使用RMAN還是使用導出導入作數據轉移,還是見仁見智吧。 以下為測試中RMAN和導出導入使用的命令,基本上沒有作任何優化。 RMAN的備份腳本: @@connect.rcv # Backup up database at full level # shutdown immediate; startup mount; run{ allocate channel d1 type disk; set limit channel d1 kbytes 2097150; backup full database format ’E:\rman_bak\dbfull_%d_%s_%p_%t’ tag=’dbfull’; release channel d1; } alter database open; exit; RMAN的恢復腳本: @@connect.rcv shutdown immediate; startup mount; run { sql "alter session set nls_date_language=AMERICAN"; sql "alter session set nls_date_format=’’yyyy-mm-dd hh24:mi:ss’’"; set until time ’2004-9-7 15:30:00’; allocate channel ch1 type disk; restore database; release channel ch1; } exit; EXP的腳本: userid=jhjkrec/jhjkrec file=e:\rman_bak\jhjkrec.dmp owner=jhjkrec direct=n compress=n feedback=1000 IMP的腳本: userid=jhjkrec/jhjkrec file=e:\rman_bak\jhjkrec.dmp ignore=y fromuser=jhjkrec touser=jhjkrec feedback=1000 全新的路由器不僅讓你更穩定快速地連接無線網絡,更可以讓家中的智能設備連接在一起。 |
溫馨提示:喜歡本站的話,請收藏一下本站!