oracle基礎-第四天les閃回_第1頁
oracle基礎-第四天les閃回_第2頁
oracle基礎-第四天les閃回_第3頁
oracle基礎-第四天les閃回_第4頁
oracle基礎-第四天les閃回_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

北京傳智播客教育閃回北京傳智播客教育通過本章學習,您將可以:閃回的基本概念閃回表閃回刪除閃回版本查詢閃回事務查詢目標閃回(Flashback)在Oracle的操作工程中,會不可避免地出現(xiàn)操作失誤或者用戶失誤,例如不小心刪除了一個表等,這些失誤和錯誤可能會造成重要數(shù)據(jù)的丟失,最終導致Oracle數(shù)據(jù)庫停止。在傳統(tǒng)意義上,當發(fā)生數(shù)據(jù)丟失、數(shù)據(jù)錯誤問題時,解決的主要辦法是數(shù)據(jù)的導入導出、備份恢復技術,這些方法都需要在發(fā)生錯誤前,有一個正確的備份才能進行恢復。為了減少這方面的損失,Oracle提供了閃回技術。有了閃回技術,就可以實現(xiàn)數(shù)據(jù)的快速恢復,而且不需要數(shù)據(jù)備份。北京傳智播客教育閃回的益處恢復中,閃回技術是革命性的進步傳統(tǒng)的恢復技術緩慢:它是整個數(shù)據(jù)庫或者一個文件恢復,不只恢復損壞的數(shù)據(jù)在數(shù)據(jù)庫日志中每個修改都必須被檢查閃回速度快:通過行和事務把改變編入索引僅僅改變了的數(shù)據(jù)會被恢復閃回命令很容易:沒有復雜棘手的多步程序北京傳智播客教育閃回的類型閃回表(flashbacktable)閃回刪除(flashbackdrop)閃回版本查詢(flashbackversionquery)閃回事務查詢(flashbacktransactionquery)北京傳智播客教育閃回表閃回表,實際上是將表中的數(shù)據(jù)快速恢復到過去的一個是焦點或者系統(tǒng)改變號SCN上。實現(xiàn)表的閃回,需要使用到與撤銷表空間相關的undo信息,通過showparameterundo命令可以了解這些信息。用戶對表數(shù)據(jù)的修改操作,都記錄在撤銷表空間中,這為表的閃回提供了數(shù)據(jù)恢復的基礎。例如,某個修改操作在提交后被記錄在撤銷表空間中,保留時間為900秒,用戶可以在這900秒的時間內(nèi)對表進行閃回操作,從而將表中的數(shù)據(jù)恢復到修改之前的狀態(tài)。執(zhí)行表的閃回,需要有flashbackanytable的權限北京傳智播客教育閃回表語法:FLASHBACKTABLE[schema.]<table_name>TO

{[BEFOREDROP[RENAMETOtable]][SCN|TIMESTAMP]expr[ENABLE|DISABLE]TRIGGERS}schema:模式名,一般為用戶名。TOTIMESTAMP:系統(tǒng)郵戳,包含年、月、日、時、分、秒。TOSCN:系統(tǒng)更改號,ENABLETRIGGERS:表示觸發(fā)器恢復以后為enable狀態(tài),而默認為disable狀態(tài)。TOBEFOREDROP:表示恢復到刪除之前。RENAMETOtable:表示更換表名。北京傳智播客教育閃回表注意:閃回表需要將表的行移動功能打開altertable<table_name>enablerowmovement;北京傳智播客教育閃回表舉例:通過timestamp閃回表通過SCN號閃回表北京傳智播客教育閃回表:需要考慮的事情FLASHBACKTABLE命令作為單一的事務執(zhí)行,會得到一個單一的DML鎖表的統(tǒng)計數(shù)據(jù)不會被閃回當前的索引和從屬的對象會被維持閃回表操作:系統(tǒng)表不能被閃回不能跨越DDL操作會被寫入警告日志產(chǎn)生撤銷和重做的數(shù)據(jù)北京傳智播客教育閃回刪除閃回刪除,實際上從系統(tǒng)的回收站中將已刪除的對象,恢復到刪除之前的狀態(tài)。系統(tǒng)的回收站只對普通用戶有作用。北京傳智播客教育閃回刪除:回收站(recyclebin)簡介回收站是所有被刪除對象及其相依對象的邏輯存儲容器,例如當一個表被刪除(drop)時,該表及其相依對象并不會馬上被數(shù)據(jù)庫徹底刪除,而是被保存到回收站中?;厥照緦⒂脩魣?zhí)行的drop操作記錄在一個系統(tǒng)表中,也就是將被刪除的對象寫到一個數(shù)據(jù)字典中。如果確定不再需要該對象,可以使用purge命令對回收站進行清空。被刪除的對象的名字可能是相同的,例如用戶創(chuàng)建了一個test表,使用drop命令刪除該表后,又創(chuàng)建了一個test表,這時,如果再次刪除該表就會導致向回收站中添加了兩個相同的表。Oracle回收站舉例。北京傳智播客教育閃回刪除:回收站中對象的命名規(guī)則為了確保添加到回收站中的對象的名稱都是唯一的,系統(tǒng)會對這些保存到回收站中的對象進行重命名,重命名的格式如下: BIN$globalUID$version其中:BIN表示RECYCLEBIN;globalUID是一個全局唯一的、24個字非長的對象,該標識與原對象名沒有任何關系;version指數(shù)據(jù)庫分配的版本號。北京傳智播客教育閃回刪除舉例:閃回使用drop命令刪除的表使用表名閃回使用recyclebinname閃回閃回重名的表北京傳智播客教育閃回刪除:需要考慮的事情閃回刪除對下列表無效:在SYSTEM表空間內(nèi)的表用精細審計的數(shù)據(jù)庫或虛擬的私人數(shù)據(jù)庫屬于字典管理的表空間由于空間不足已經(jīng)被手動或自動刪除的表以下依賴不被保護:位圖索引表之前刪掉的索引北京傳智播客教育閃回版本查詢閃回版本查詢,提供了一個審計行改變的查詢功能,通過它可以查找到所有已經(jīng)提交了的行記錄。其語法格式如下:selectcolumn_name[,column_name,...]fromtable_nameversionsbetween[SCN|TIMESTAMP][expr|MINVALUE]

and[epxr|MAXVALUE]asof[SCN|TIMESTAMP]expr;其中:column_name列名;table_name表名;between...and時間段;SCN系統(tǒng)改變號;TIMESTAMP時間戳;ASOF表示恢復單個版本;MAXVALUE最大值;MINVALUE最小值;expr指定一個值或者表達式。北京傳智播客教育閃回版本查詢舉例創(chuàng)建一張新表:createtableversion_table(vidint,contentvarchar(20));執(zhí)行如下操作:insertintoversion_tablevalues(1,'aaa');commit;insertintoversion_tablevalues(2,'bbb');commit;updateversion_tablesetcontent='bbb1'wherevid=2;commit;insertintoversion_tablevalues(3,'ccc');commit;執(zhí)行閃回版本查詢。北京傳智播客教育閃回事務查詢閃回事務查詢實際上閃回版本查詢的一個擴充,通過它可以審計某個事務甚至撤銷一個已經(jīng)提交的事務。實現(xiàn)閃回事務查詢,需要先了解flashback_transaction_query視圖,從該視圖中可以獲取事務的歷史操作記錄以及撤銷語句(UNDO_SQL)。使用閃回事務查詢,可以了解某個表的歷史操作記錄,這個操作記錄對應一個撤銷SQL語句,如果想要撤銷這個操作,就可以執(zhí)行這個SQL語句。北京傳智播客教育Flashback_transaction_query北京傳智播客教育名稱類型說明

------------------------------------------------------------------------------------------------XIDRAW(8)事務編號

START_SCNNUMBER事務的開始的系統(tǒng)改變號

START_TIMESTAMPDATE事務的開始時間

COMMIT_SCNNUMBER事務提交時的系統(tǒng)改變號

COMMIT_TIMESTAMPDATE事務提交時的時間

LOGON_USERVARCHAR2(30)對應的用戶

UNDO_CHANGE#NUMBER撤銷操作對應的編號

OPERATIONVARCHAR2(32)操作

TABLE_NAMEVARCHAR2(256)表

TABLE_OWNERVARCHAR2(32)所有者

ROW_IDVARCHAR2(19)行號

UNDO_SQLVARCHAR2(4000)撤銷事務的SQL語句

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論