DBWR 寫資料檔案 (zt)
Server Process
1. First, the server checks whether the required block is available in the buffer cache using a hash function. If the block is found, it is moved to another point in LRU list away from the LRU end. This is a logical read, because no actual I/O took place. If the block is not found in the buffer cache, the server process has to read the block from the data file.
2. Before reading from the data file, the server process searches the LRU list for a free block.
3. While searching the LRU list, the server process moves dirty blocks to the dirty list.
4. If the dirty list exceeds its size threshold, the server signals DBWn to flush dirty blocks from the data buffer cache. If the server cannot find a free block within a search threshold, it signals DBWn to flush.
5. After a free block is found, the server reads the block from the data file into the free block in the database buffer cache. Oracle server process moves the block away from the LRU end of the LRU list.
6. If the blocks is not consistent, the server rebuilds an earlier version of the block from the current block and rollback segments.
DBWn Process
7. Dirty List Exceeds its Size Threshold: A server process finds that the dirty list has exceeded its size threshold, so it signals DBWn to flush. DBWn writes out the blocks on the dirty list.
8. Search Threshold Exceeded: A server process that cannot find a free block on the LRU list within the search threshold signals DBWn to flush dirty blocks. DBWn writes out dirty blocks directly from the LRU list.
9. Three Second Time-Out: Every three seconds, DBWn checks the dirty list for blocks to write. DBWn moves dirty blocks from the LRU list to the dirty list, so that it has enough blocks for a full write buffer. Then DBWn writes blocks on the dirty list from the buffer cache to the data files. If there is no update activity for extended periods of time, DBWn eventually writes out all of the dirty blocks during the three-second time-outs.
10. LGWR Signal a Checkpoint: When LGWR signals that a checkpoint has occurred, DBWn copies dirty blocks from the LRU to the dirty list and writes out the blocks on the dirty list.
11. Alter Tablespace Offline Temporary or Alter Tablespace Begin Backup: When a tablespace is altered offline temporary or its online backup is started, DBWn copied the dirty blocks for that tablespace from the LRU to the dirty list (step 8) and writes out the blocks on the dirty list (steps 6 and 7).
12.Drop Object: When an object is dropped, DBWn first flushes the objects dirty blocks to disk (steps 8 and 7).
13. Clean Shutdown (Normal, Immediate, or Transactional)
1. First, the server checks whether the required block is available in the buffer cache using a hash function. If the block is found, it is moved to another point in LRU list away from the LRU end. This is a logical read, because no actual I/O took place. If the block is not found in the buffer cache, the server process has to read the block from the data file.
2. Before reading from the data file, the server process searches the LRU list for a free block.
3. While searching the LRU list, the server process moves dirty blocks to the dirty list.
4. If the dirty list exceeds its size threshold, the server signals DBWn to flush dirty blocks from the data buffer cache. If the server cannot find a free block within a search threshold, it signals DBWn to flush.
5. After a free block is found, the server reads the block from the data file into the free block in the database buffer cache. Oracle server process moves the block away from the LRU end of the LRU list.
6. If the blocks is not consistent, the server rebuilds an earlier version of the block from the current block and rollback segments.
DBWn Process
7. Dirty List Exceeds its Size Threshold: A server process finds that the dirty list has exceeded its size threshold, so it signals DBWn to flush. DBWn writes out the blocks on the dirty list.
8. Search Threshold Exceeded: A server process that cannot find a free block on the LRU list within the search threshold signals DBWn to flush dirty blocks. DBWn writes out dirty blocks directly from the LRU list.
9. Three Second Time-Out: Every three seconds, DBWn checks the dirty list for blocks to write. DBWn moves dirty blocks from the LRU list to the dirty list, so that it has enough blocks for a full write buffer. Then DBWn writes blocks on the dirty list from the buffer cache to the data files. If there is no update activity for extended periods of time, DBWn eventually writes out all of the dirty blocks during the three-second time-outs.
10. LGWR Signal a Checkpoint: When LGWR signals that a checkpoint has occurred, DBWn copies dirty blocks from the LRU to the dirty list and writes out the blocks on the dirty list.
11. Alter Tablespace Offline Temporary or Alter Tablespace Begin Backup: When a tablespace is altered offline temporary or its online backup is started, DBWn copied the dirty blocks for that tablespace from the LRU to the dirty list (step 8) and writes out the blocks on the dirty list (steps 6 and 7).
12.Drop Object: When an object is dropped, DBWn first flushes the objects dirty blocks to disk (steps 8 and 7).
13. Clean Shutdown (Normal, Immediate, or Transactional)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-84717/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 觸發DBWR程式寫髒資料塊到資料檔案的幾個條件
- 表空間&資料檔案和控制檔案(zt)
- 關於控制檔案與資料檔案頭資訊的說明(zt)
- 將ORACLE資料庫資料檔案遷移到其他目錄(ZT)Oracle資料庫
- ssis 寫檔案到資料庫資料庫
- Android建立資料夾及檔案並寫入資料Android
- matlab 資料檔案MAT的讀與寫Matlab
- Oracle檔案頭資訊(zt)Oracle
- ZT 寫有效的歷史資料遷移sqlSQL
- 資料庫從檔案系統轉移至ASM實驗記錄[zt]資料庫ASM
- 檢視 Linux 檔案佔用程式寫資料?Linux
- 建立資料庫檔案-日誌檔案-次要資料庫檔案資料庫
- zt_Oracle資料恢復:資料檔案頭的SCN與時間校驗_file$_scnOracle資料恢復
- zt_zfs 檔案系統
- 資料檔案
- 表空間offline,資料檔案offline 的區別(ZT)
- zt_如何從離線的資料檔案中得到Oracle的版本_versionOracle
- zt_oracle資料檔案為什麼存在 Rfile# and file#_rowidOracle
- [zt] Oracle 11g 閃回資料歸檔Oracle
- python如何將資料寫入本地txt文字檔案Python
- python——將excel檔案寫入mysql資料庫中PythonExcelMySql資料庫
- php百萬資料透過指令碼檔案寫入csvPHP指令碼
- 將Buffer Cache內容強制寫出到資料檔案
- oracle資料庫移動資料檔案、日誌檔案和控制檔案Oracle資料庫
- 資料庫檔案和檔案組資料庫
- [Q]丟失一個資料檔案,但是沒有備份,怎麼樣開啟資料庫 zt資料庫
- 資料庫引數檔案控制檔案日誌檔案資料檔案跟蹤檔案等8大檔案的字典資料庫
- 資料庫課程作業筆記 - 編寫資料庫遷移檔案資料庫筆記
- 檔案與資料
- 資料泵檔案
- oracle升級後資料檔案路徑變為大寫Oracle
- 資料庫課程作業筆記 - 編寫模型檔案資料庫筆記模型
- alwayson只讀節點資料檔案的磁碟被寫滿
- 從網路裡面獲取資料寫入到檔案
- 【FLUSH】將Buffer Cache內容強制寫出到資料檔案
- 資料檔案誤刪--但有資料檔案的copy恢復
- 檔案排版(文字檔案讀寫)
- 資料庫管理(ZT)資料庫