成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Oracle數據庫的實用型的表現

數據庫 Oracle
以下的文章主要是描述Oracle數據庫是如何通過Redo來確保相關數據庫的事務能被重演的實際操作步驟,以下就是正文的詳細內容的介紹。

Oracle是通過Redo來確保數據庫的事務能被重演,只有這樣才能使得在出現故障之后,相關的數據才可以被恢復。所以Redo對于Oracle數據庫來說是至關重要。在數據庫中,Redo的功能主要通過3個組件來實現:Redo Log Buffer、LGWR后臺進程和Redo Log File(在歸檔模式下,Redo Log File最終會寫出為歸檔日志文件)。

在Oracle的SGA中,存在一塊共享內存,稱為Redo Log Buffer,如圖6-1所示。

Redo Log Buffer位于SGA之中,是一塊循環使用的內存區域,其中保存Oracle數據庫變更的相關信息。這些信息以重做條目(Redo Entries)形式存儲(Redo Entries也經常被稱為Redo Records)。Redo Entries包含重構、重做數據庫變更的重要信息,這些變更包括INSERT、UPDATE、DELETE、CREATE、ALTER或者DROP等。在必要的時候Redo Entries被用于數據庫恢復。

Redo Entries的內容被Oracle數據庫進程從用戶的內存空間復制到SGA中的Redo Log Buffer之中。Redo Entries在內存中占用連續的順序空間,由于Redo Log Buffer是循環使用的,Oracle通過一個后臺進程LGWR不斷地把Redo Log Buffer的內容寫出到Redo Log File中。

 當用戶在Buffer Cache中修改數據時,Oracle并不會立即將修改數據寫出到數據文件上,因為那樣做效率會很低,到目前為止,計算機系統中最繁忙的部分是磁盤的I/O操作,Oracle這樣做的目的是為了減少IO的次數,當修改過的數據達到一定數量之后,可以進行高效地批量寫出。

大部分傳統數據庫(當然包括Oracle)在處理數據修改時都遵循no-force-at-commit策略。也就是說,在提交時并不強制寫。那么為了保證數據在數據庫發生故障時(例如斷電)可以恢復,Oracle引入了Redo機制,通過連續的、順序的日志條目的寫出將隨機的、分散的數據塊的寫出推延。

這個推延使得數據的寫出可以獲得批量效應的性能提升。

同Redo Log Buffer類似,Redo Log File也是循環使用的,Oracle允許使用最少兩個日志組。缺省情況下,Oracle數據庫創建時會建立3個日志組。

  1. SQL> select group#,members,status from v$log;  
  2. GROUP# MEMBERS STATUS  
  3. INACTIVE  
  4. CURRENT  
  5. INACTIVE 

當一個日志文件寫滿之后,會切換到另外一個日志文件,這個切換過程稱為Log Switch。Log Switch會觸發一個檢查點,促使DBWR進程將寫滿的日志文件保護的變更數據寫回到數據庫。在檢查點完成之前,日志文件是不能夠被重用的。

由于Redo機制對于數據的保護,當Oracle數據庫發生故障時,Oracle就可以通過Redo重演進行數據恢復。那么一個非常重要的問題是,恢復應該從何處開始呢?

如果讀取的Redo過多,那么必然導致恢復的時間過長,在生產環境中,我們必需保證恢復時間要盡量得短。Oracle通過檢查點(Checkpoint)來縮減恢復時間。回顧一下第1章中所提到的內容:檢查點只是一個數據庫事件,它存在的根本意義在于減少恢復時間。

當檢查點發生時(此時的SCN被稱為Checkpoint SCN)Oracle會通知DBWR進程,把修改過的數據,也就是此Checkpoint SCN之前的臟數據(Dirty Buffer)從Buffer Cache寫入磁盤,在檢查點完成后CKPT進程會相應地更新控制文件和數據文件頭,記錄檢查點信息,標識變更。

在檢查點完成之后,此檢查點之前修改過的數據都已經寫回磁盤,重做日志文件中的相應重做記錄對于崩潰/實例恢復不再有用。如果此后數據庫崩潰,那么恢復只需要從***一次完成的檢查點開始恢復即可。如果Oracle數據庫運行在歸檔模式(所有生產數據庫,都建議運行在歸檔模式),日志文件在重用之前必須寫出到歸檔日志文件,歸檔日志在介質恢復時可以用來恢復數據庫故障。

【編輯推薦】

  1. Oracle數據庫的異構服務原理描述
  2. Oracle使用hints的調整機制實操
  3. Oracle移植到mysql中,應注意的事項
  4. 對聯機備份Oracle數據的解剖
  5. 在Oracle數據庫中使用PL操作COM對象
責任編輯:佚名 來源: 博客園
相關推薦

2019-12-19 11:19:02

區塊鏈實用型Linux

2022-06-15 15:23:03

實用型代幣加密貨幣以太坊

2010-04-09 19:08:31

甲骨文Oracle應用顧問

2009-12-16 13:48:06

Ruby Web開發框

2012-06-27 14:04:20

宏碁投影機

2018-12-12 19:10:01

Oracle數據庫自動備份

2012-06-19 13:51:20

飛利浦傳真機

2010-05-11 18:23:31

MySQL數據庫分區

2010-06-13 10:46:52

MySQL 數據庫

2011-10-27 14:40:24

筆記本評測

2010-06-17 13:34:47

SQL Server數

2010-04-14 08:49:43

Oracle數據庫系統

2010-04-28 10:45:24

Oracle10g

2010-04-14 15:30:41

Oracle數據庫

2011-06-15 10:10:17

Oracle11g

2015-06-08 13:48:15

數據庫數據完整性約束表現

2010-04-22 17:36:51

Oracle數據庫

2010-04-09 10:32:03

Oracle 數據庫

2009-01-20 15:28:42

無線路由華碩RT-G31

2011-05-29 13:41:55

噴墨打印機首測
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成年人在线 | 一区二区精品视频 | 欧美一区二区在线观看 | 日韩毛片在线免费观看 | 精品国产91亚洲一区二区三区www | 国产精品18久久久久久久 | 国产精品久久精品 | 久久精品99久久 | 亚洲欧洲在线视频 | 午夜影院中文字幕 | 久久综合九色综合欧美狠狠 | 午夜免费av| 欧美一区二区在线观看 | 少妇av片| 91精品国产91久久久久青草 | 亚洲精品视频播放 | 成人午夜网 | 这里只有精品99re | 天天玩天天干天天操 | 中文字幕视频在线观看 | 国产ts人妖系列高潮 | 二区三区视频 | 国产精品123区 | 欧美三级免费观看 | 欧美一区二区三区视频在线 | 狠狠ri| 国产一区二区三区在线 | 欧美一级高潮片免费的 | 国产精品国产三级国产aⅴ无密码 | 国产精品国产三级国产aⅴ中文 | 成人国产a | 日日骚视频 | 免费亚洲成人 | 一级片aaa| 一区二区视频免费观看 | 中文字幕在线观看一区 | 久久精品久久精品久久精品 | 一区在线视频 | 国产欧美一区二区三区久久人妖 | 91免费观看视频 | 欧美自拍第一页 |