版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、數據庫備份與恢復數據庫備份與恢復涂利明涂利明 主要內容數據庫備份數據庫備份1數據庫恢復數據庫恢復2344數據庫備份與恢復概念數據庫備份與恢復概念v 備份與恢復是數據庫管理中最重要的方面之備份與恢復是數據庫管理中最重要的方面之 一。如果一。如果數據庫崩潰卻沒有辦法恢復它,那么會對企業(yè)造成毀滅數據庫崩潰卻沒有辦法恢復它,那么會對企業(yè)造成毀滅性的結果。性的結果。v 數據庫的備份是數據庫中數據的副本,它可以保護數據數據庫的備份是數據庫中數據的副本,它可以保護數據在出現(xiàn)意外損失時最大限度的恢復。在出現(xiàn)意外損失時最大限度的恢復。v OracleOracle數據庫使用幾種結構來保護數據:數據庫后備、數據庫使
2、用幾種結構來保護數據:數據庫后備、日志、回滾段和控制文件。日志、回滾段和控制文件。數據庫系統(tǒng)故障類型v 導致數據庫操作中止的故障包括四種類型導致數據庫操作中止的故障包括四種類型故障類型 語句故障介質故障實例故障用戶進程故障在執(zhí)行 SQL 語句過程中發(fā)生的邏輯故障可導致語句故障。如果用戶編寫的 SQL 語句無效,就會發(fā)生邏輯故障當用戶程序出錯而無法訪問數據庫時發(fā)生用戶進程故障。導致用戶進程故障的原因是異常斷開連接或異常終止進程 當 Oracle 的數據庫實例由于硬件或軟件問題而無法繼續(xù)運行時,就會發(fā)生實例故障在數據庫無法正確讀取或寫入某個數據庫文件時,會發(fā)生介質故障 備份與恢復的策略1.1.多路
3、復用控制文件及多個并發(fā)備份多路復用控制文件及多個并發(fā)備份2.2.多路復用聯(lián)機重做日志文件多路復用聯(lián)機重做日志文件3.3.在在ARCHIVELOG ARCHIVELOG 模式下運行數據庫,并將重做日志模式下運行數據庫,并將重做日志存檔至多個位置存檔至多個位置4.4.時常備份物理數據文件,盡可能創(chuàng)建多個副本到可時常備份物理數據文件,盡可能創(chuàng)建多個副本到可靠的位置靠的位置備份與恢復的幾類重要數據結構1.1.數據文件數據文件2.2.聯(lián)機重做日志文件聯(lián)機重做日志文件3.3.控制文件控制文件4.4.自動管理的撤銷自動管理的撤銷5.5.可選的備份文件可選的備份文件( (參數文件、密碼文件參數文件、密碼文件)
4、 )歸檔模式的設置v Oracle Oracle 數據庫可以運行在兩種模式:數據庫可以運行在兩種模式: 非歸檔日志模式非歸檔日志模式 歸檔日志模式歸檔日志模式v 非歸檔日志方式可以避免實例故障,但無法避免介質故非歸檔日志方式可以避免實例故障,但無法避免介質故障。在此方式下,數據庫只能實施冷備份。障。在此方式下,數據庫只能實施冷備份。v 歸檔日志方式產生歸檔日志,用戶可以使用歸檔日志完歸檔日志方式產生歸檔日志,用戶可以使用歸檔日志完全恢復數據庫。全恢復數據庫。非歸檔模式下數據庫工作原理表空間脫機 備份表空間恢復表空間 表空間聯(lián)機 歸檔模式下數據庫工作原理日志文件1填滿 清空日志文件 2 向日志文
5、件2寫入信息準備向日志文件 2 寫入信息 備份日志文件2歸檔模式的設置v 關閉數據庫:關閉數據庫:shutdown immediateshutdown immediatev 以以mountmount啟動數據庫:啟動數據庫:startup mountstartup mountv 設置為歸檔模式:設置為歸檔模式:alter database archivelog;alter database archivelog;v 打開數據庫:打開數據庫: alter database open;alter database open;v 查看歸檔信息:查看歸檔信息:archive log listarchiv
6、e log list歸檔模式關鍵系統(tǒng)參數v log_archive_startlog_archive_start 自動存檔啟用還是禁用。自動存檔啟用還是禁用。 Oracle 9iOracle 9i這個參數一定要設置為這個參數一定要設置為truetrue,Oracle 10gOracle 10g可以省略可以省略不設置,把該參數設置和歸檔模式設置綁定在一起。不設置,把該參數設置和歸檔模式設置綁定在一起。v Log_archive_formatLog_archive_format 指定歸檔日志命名格式。指定歸檔日志命名格式。 log_archive_format=arc%t%s.arclog_arc
7、hive_format=arc%t%s.arc。%t%t是線程號是線程號(thread)(thread),%s%s是序號是序號( (產生日志的序號產生日志的序號) )。 v log_archive_destlog_archive_dest 指定歸檔日志文件存儲位置。指定歸檔日志文件存儲位置。v 可以通過數據字典視圖查看歸檔日志信息可以通過數據字典視圖查看歸檔日志信息 V$ARCHIVE_DEST:V$ARCHIVE_DEST:顯示當前所有歸檔日志存儲位置及其狀態(tài)顯示當前所有歸檔日志存儲位置及其狀態(tài) SQL select dest_id,dest_name,status,destinationS
8、QL select dest_id,dest_name,status,destination from v$archive_dest from v$archive_dest where status=valid; where status=valid; V$ARCHIVE_LOG :V$ARCHIVE_LOG :顯示歷史歸檔日志信息顯示歷史歸檔日志信息 SQL select dest_id,name,archived SQL select dest_id,name,archived from v$archived_log; from v$archived_log;主要內容數據庫備份數據庫備份1
9、數據庫恢復數據庫恢復2344數據庫備份與恢復概念數據庫備份與恢復概念常見的備份類型v 聯(lián)機數據庫備份聯(lián)機數據庫備份 -使用使用archivelogarchivelog模式模式,SCN,SCN不一致不一致v 脫機數據庫備份脫機數據庫備份 -使用使用noarchivelognoarchivelog模式模式,SCN,SCN保持一致保持一致v 整個數據庫整個數據庫 -可以在不同的時間段來備份,減輕可以在不同的時間段來備份,減輕I/OI/O壓力,從而構建整個數據庫壓力,從而構建整個數據庫v 表空間表空間 -在在archivelogarchivelog模式下,當處于模式下,當處于noarchivelogn
10、oarchivelog模式下,則該表空間必須為只讀或脫機模式下,則該表空間必須為只讀或脫機v 數據文件數據文件 -同表空間備份同表空間備份v 控制文件控制文件 -可以使用可以使用SQLSQL語句或語句或RMANRMAN來備份來備份v 歸檔日志歸檔日志 v 參數文件參數文件備份分類v OracleOracle數據庫的備份包括以下兩種類型數據庫的備份包括以下兩種類型備份物理備份邏輯備份 對數據庫的操作系統(tǒng)物理文件(如數據文件、控制文件和重做日志文件等)的備份 有脫機備份(冷備份)和聯(lián)機 備份(熱備份) 對數據庫邏輯組件(如表、視 圖和存儲過程等數據庫對象) 的備份 有導出/導入(EXPORT/IM
11、PORT)物理備份v 是所有物理文件的一個副本,比如數據文件,控制文件,是所有物理文件的一個副本,比如數據文件,控制文件,歸檔日志等。該副本能被存儲在本地磁盤或磁帶等等。歸檔日志等。該副本能被存儲在本地磁盤或磁帶等等。v 物理備份是備份或恢復的基礎物理備份是備份或恢復的基礎v 包括冷備份包括冷備份( (非歸檔模式非歸檔模式) )或熱備份或熱備份( (歸檔模式歸檔模式) )邏輯備份v 將表、存儲過程等數據使用將表、存儲過程等數據使用OracleOracle的的exportexport等工具等工具導出到二進制文件,后續(xù)根據需要再使用導出到二進制文件,后續(xù)根據需要再使用importimport工工具
12、導入數據庫。具導入數據庫。v 邏輯備份則是對物理備份的方式的一種補充,多用邏輯備份則是對物理備份的方式的一種補充,多用于數據遷移。于數據遷移。備份的分類v 1.1.全部備份與部分備份全部備份與部分備份 全部備份:包含所有的數據文件及至少一個控制文件,參數文全部備份:包含所有的數據文件及至少一個控制文件,參數文件,密碼文件等。件,密碼文件等。 部分備份:包含零個或多個表空間,零個或多個數據文件,可部分備份:包含零個或多個表空間,零個或多個數據文件,可能包含控制文件等。部分備份僅在歸檔模式下才有效。能包含控制文件等。部分備份僅在歸檔模式下才有效。v 2.2.映像副本與備份集映像副本與備份集 映像副
13、本:是某個文件的完整拷貝,未經過任何壓縮處理,每映像副本:是某個文件的完整拷貝,未經過任何壓縮處理,每個字節(jié)都與源文件相同。不支持增量備份也不能備份到磁帶。個字節(jié)都與源文件相同。不支持增量備份也不能備份到磁帶。 備份集:備份集: 由一個或多個稱為由一個或多個稱為piecepiece的物理文件組成的邏輯結構。備份片中的物理文件組成的邏輯結構。備份片中可以是數據文件,控制文件以及歸檔日志文件??梢允菙祿募刂莆募约皻w檔日志文件。 支持數據的壓縮,支持增量備份。支持數據的壓縮,支持增量備份。 可以備份到磁盤,也可以備份到磁帶??梢詡浞莸酱疟P,也可以備份到磁帶。v 3.3.完整備份與增量備份完整
14、備份與增量備份 完整備份:一個或多個數據文件的一個完整副本,包含從備完整備份:一個或多個數據文件的一個完整副本,包含從備份開始處所有的數據塊。份開始處所有的數據塊。 增量備份:包含從最近一次次備份以來被修改或添加的數據增量備份:包含從最近一次次備份以來被修改或添加的數據塊。塊。 差異增量:是備份上級及同級備份以來所有變化的數據塊,差差異增量:是備份上級及同級備份以來所有變化的數據塊,差異增量是默認增量備份方式異增量是默認增量備份方式 累計增量:是備份上級備份以來所有變化的塊累計增量:是備份上級備份以來所有變化的塊v 4.4.脫機備份與聯(lián)機備份脫機備份與聯(lián)機備份 脫機備份:在數據庫關閉階段發(fā)生的
15、備份,又稱為一致性備份脫機備份:在數據庫關閉階段發(fā)生的備份,又稱為一致性備份或冷備份。在一致性關閉數據庫后,控制文件或冷備份。在一致性關閉數據庫后,控制文件SCNSCN與數據文件與數據文件頭部頭部SCNSCN一致一致 聯(lián)機備份:聯(lián)機備份: 在數據庫使用階段發(fā)生的備份,又稱為非一致性備份或熱備份。在數據庫使用階段發(fā)生的備份,又稱為非一致性備份或熱備份。聯(lián)機備份一個數據文件不與任何特定的聯(lián)機備份一個數據文件不與任何特定的SCNSCN以及控制文件同步以及控制文件同步 可以是全部備份,也可以是部分備份,能夠使用可以是全部備份,也可以是部分備份,能夠使用RMANRMAN或操作系統(tǒng)或操作系統(tǒng)命令完成命令完
16、成 僅僅在僅僅在archivelogarchivelog模式下模式下導出工具expv 它是操作系統(tǒng)下一個可執(zhí)行的文件它是操作系統(tǒng)下一個可執(zhí)行的文件 存放目錄存放目錄/ORACLE_HOME/bin/ORACLE_HOME/binv expexp導出工具將數據庫中數據備份壓縮成一個二進制系統(tǒng)文導出工具將數據庫中數據備份壓縮成一個二進制系統(tǒng)文件件. .可以在不同可以在不同OSOS間遷移間遷移v 它有三種模式:它有三種模式: a.a.用戶模式:導出用戶所有對象以及對象中的數據;用戶模式:導出用戶所有對象以及對象中的數據; b.b.表模式:導出用戶所有表或者指定的表;表模式:導出用戶所有表或者指定的表
17、; c.c.整個數據庫:導出數據庫中所有對象。整個數據庫:導出數據庫中所有對象。exp常用參數例子v 1 1、交互式、交互式exp test/test123appdbexp test/test123appdbEnter array fetch buffer size: 4096 Enter array fetch buffer size: 4096 回車回車Export file: expdat.dmp Export file: expdat.dmp d:m.dmp d:m.dmp 生成導出的文件名生成導出的文件名 (1)E(ntire database), (2)U(sers), or (3
18、)T(ables): (1)E(ntire database), (2)U(sers), or (3)T(ables): (2)U (2)U 3 3Export table data (yes/no): yes Export table data (yes/no): yes 回車回車Compress extents (yes/no): yes Compress extents (yes/no): yes 回車回車v 導出工具導出工具expexp非交互式命令行方式的例子非交互式命令行方式的例子v exp scott/tiger tables=(emp,dept) file=d:/director
19、y/scott.dmp exp scott/tiger tables=(emp,dept) file=d:/directory/scott.dmp grants=y grants=y 說明說明: :把把scottscott用戶里兩個表用戶里兩個表emp,deptemp,dept導出到文件導出到文件d:/directory/scott.dmpd:/directory/scott.dmpv exp scott/tiger tables=emp query=where job=salesman and exp scott/tiger tables=emp query=where job=salesm
20、an and sal1600 file=/directory/scott2.dmp sal1600 file=/directory/scott2.dmp 說明說明: :在在expexp里面加上導出里面加上導出empemp的查詢條件的查詢條件job=salesman and job=salesman and sal1600 (sal d: expdat.dmp d:/tmp/m.dmp/tmp/m.dmpv 導入工具導入工具impimp非交互式命令行方式的例子非交互式命令行方式的例子 $ imp system/manager fromuser=jones tables=(accts) $ imp
21、 system/manager fromuser=jones tables=(accts) $ imp system/manager fromuser=scott tables=(emp,dept) $ imp system/manager fromuser=scott tables=(emp,dept) $ imp system/manager fromuser=scott touser=joe tables=emp $ imp system/manager fromuser=scott touser=joe tables=emp $ imp scott/tiger file = expda
22、t.dmp full=y $ imp scott/tiger file = expdat.dmp full=y $ imp scott/tiger file = /mnt1/t1.dmp show=n buffer=2048000 ignore=n $ imp scott/tiger file = /mnt1/t1.dmp show=n buffer=2048000 ignore=n commit=y grants=y full=y log=/oracle_backup/log/imp_scott.logcommit=y grants=y full=y log=/oracle_backup/l
23、og/imp_scott.log $ imp system/manager parfile=params.dat $ imp system/manager parfile=params.dat params.dat params.dat 內容內容 file=dba.dmp show=n ignore=n grants=y fromuser=scott file=dba.dmp show=n ignore=n grants=y fromuser=scott tables=(dept,emp)tables=(dept,emp)導入工具imp可能出現(xiàn)的問題v (1) (1) 數據庫對象已經存在數據庫
24、對象已經存在 一般情況一般情況, , 導入數據前應該徹底刪除目標數據下的表導入數據前應該徹底刪除目標數據下的表, , 序列序列, , 函數函數/ /過程過程, ,觸發(fā)器等觸發(fā)器等; ; 數據庫對象已經存在數據庫對象已經存在, , 按缺省的按缺省的impimp參數參數, , 則會導入失敗則會導入失敗 如果用了參數如果用了參數ignore=y, ignore=y, 會把會把expexp文件內的數據內容導入文件內的數據內容導入 如果表有唯一關鍵字的約束條件如果表有唯一關鍵字的約束條件, , 不合條件將不被導入不合條件將不被導入 如果表沒有唯一關鍵字的約束條件如果表沒有唯一關鍵字的約束條件, , 將引
25、起記錄重復將引起記錄重復v (2) (2) 數據庫對象有主外鍵約束數據庫對象有主外鍵約束 不符合主外鍵約束時不符合主外鍵約束時, , 數據會導入失敗數據會導入失敗 解決辦法解決辦法: : 先導入主表先導入主表, , 再導入依存表再導入依存表 disabledisable目標導入對象的主外鍵約束目標導入對象的主外鍵約束, , 導入數據后導入數據后, , 再再enableenable它們它們v (3)(3)權限不夠權限不夠 如果要把如果要把A A用戶的數據導入用戶的數據導入B B用戶下用戶下, A, A用戶需要有用戶需要有imp_full_databaseimp_full_database權限權限
26、v (4)(4)導入大表導入大表( ( 大于大于80M ) 80M ) 時時, , 存儲分配失敗存儲分配失敗 默認的默認的EXPEXP時時, compress = Y, , compress = Y, 也就是把所有的數據壓縮在一個也就是把所有的數據壓縮在一個數據塊上數據塊上. . 導入時導入時, , 如果不存在連續(xù)一個大數據塊如果不存在連續(xù)一個大數據塊, , 則會導入失敗則會導入失敗. . 導出導出80M80M以上的大表時以上的大表時, , 記得記得compress= N, compress= N, 則不會引起這種錯誤則不會引起這種錯誤. .v (5)imp(5)imp和和expexp使用的字
27、符集不同使用的字符集不同 如果字符集不同如果字符集不同, , 導入會失敗導入會失敗, , 可以改變可以改變unixunix環(huán)境變量或者環(huán)境變量或者NTNT注冊表里注冊表里NLS_LANGNLS_LANG相關信息相關信息. . 導入完成后再改回來導入完成后再改回來. .v (6)imp(6)imp和和expexp版本不能往上兼容版本不能往上兼容 impimp可以成功導入低版本可以成功導入低版本expexp生成的文件生成的文件, , 不能導入高版本不能導入高版本expexp生成的文件生成的文件脫機備份的恢復步驟v shutdown shutdown 關閉數據庫關閉數據庫v 將備份的數據文件和控制文
28、件復制到數據庫中原來的位置將備份的數據文件和控制文件復制到數據庫中原來的位置v 也可將備份的重做日志文件、參數文件、口令文件復制到也可將備份的重做日志文件、參數文件、口令文件復制到數據庫中原來的位置(該操作不是必需的)數據庫中原來的位置(該操作不是必需的) v startup startup 啟動數據庫啟動數據庫 閃回操作v 閃回查詢閃回查詢(Flashback Query)(Flashback Query) 查詢過去某個指定時間、指定實體的數據。查詢過去某個指定時間、指定實體的數據。v 閃回表(閃回表(Flashback TableFlashback Table) 使表返回到過去某一時間的狀
29、態(tài)。使表返回到過去某一時間的狀態(tài)。v 閃回刪除(閃回刪除(Flashback DropFlashback Drop) 恢復被恢復被dropdrop的表或者索引。的表或者索引。v 閃回數據庫(閃回數據庫(Flashback DatabaseFlashback Database) 使數據庫迅速地回滾到以前的某個時間點或者某個使數據庫迅速地回滾到以前的某個時間點或者某個SCNSCN(系(系統(tǒng)更改號)上,而不需要進行時間點的恢復操作。統(tǒng)更改號)上,而不需要進行時間點的恢復操作。 基于閃回日志?;陂W回日志。基于回滾數據(undodata)閃回查詢v TO_TIMESTAMPTO_TIMESTAMP函數
30、格式為:函數格式為: TO_TIMESTAMPTO_TIMESTAMP(timepoint,formattimepoint,format) timepointtimepoint表示時間點表示時間點 formatformat表示需要把表示需要把timepointtimepoint轉化為何種格式轉化為何種格式v 閃回查詢舉例:查詢某一時間點閃回查詢舉例:查詢某一時間點A A表的數據表的數據SQLselect SQLselect * * from A as of timestamp from A as of timestamp to_timestamp(2009-07-05 14:10:00,yyy
31、y-mm-dd to_timestamp(2009-07-05 14:10:00,yyyy-mm-dd hh24:mi:ss);hh24:mi:ss);閃回表v 閃回表語法閃回表語法 FLASHBACK TABLEFLASHBACK TABLE schema. schema. TO BEFORE DROP RENAME TO table | SCN | TO BEFORE DROP RENAME TO table | SCN | TIMESTAMP expr ENABLE | DISABLE TRIGGERS TIMESTAMP expr ENABLE | DISABLE TRIGGERS TO TIMESTAMPTO TIMESTAMP:系統(tǒng)郵戳,包含年月日時分秒。:系統(tǒng)郵戳,包含年月日時分秒。 TO SCNTO SCN:系統(tǒng)更改號。:系統(tǒng)更改號。 ENABLE TRIGGERSENABLE TRIGGERS:表示觸發(fā)器恢復以后為:表示觸發(fā)器恢復以后為enableenable狀態(tài),而默狀態(tài),而默認為認為disabledisable狀態(tài)。狀態(tài)。 TO B
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版工程清包合同:工程設計變更與施工方案調整
- 2024某企業(yè)與咨詢公司之間的管理咨詢服務合同
- 2025年度香菇食品產品線擴展與市場拓展合同3篇
- 二零二五版智慧交通系統(tǒng)開發(fā)與技術支持協(xié)議2篇
- 二零二五版二手房買賣合同公證與節(jié)能環(huán)保改造服務協(xié)議2篇
- 2025年度跨國企業(yè)集團財務合并報表編制合同3篇
- 2024年銷售代理協(xié)議(意向)3篇
- 個性化活動策劃方案協(xié)議2024規(guī)格版A版
- 2024版地暖安裝工程承包合同書
- 2024版企業(yè)業(yè)務外包人員協(xié)議模板版B版
- 前列腺增生藥物治療
- 人工智能知識圖譜(歸納導圖)
- 滴滴補貼方案
- 民宿建筑設計方案
- 干部基本信息審核認定表
- 2023年11月外交學院(中國外交培訓學院)2024年度公開招聘24名工作人員筆試歷年高頻考點-難、易錯點薈萃附答案帶詳解
- 春節(jié)行車安全常識普及
- 電機維護保養(yǎng)專題培訓課件
- 汽車租賃行業(yè)利潤分析
- 春節(jié)拜年的由來習俗來歷故事
- 2021火災高危單位消防安全評估導則
評論
0/150
提交評論