❶ 誰能介紹一下 oracle 中檢查點 及SCN的用法。
有一家叫甲骨文的糧店,老闆很嚴謹,為了防止倉庫的糧食在買入賣出的時候發生銀辯問題,他制訂一套流程,首先進出倉庫的每一旦糧食都要求有一個編號(SCN),而且出入庫之前必須先放到一個平台上(buffer cache),他命令倉庫叫大頭的伙計(datafile head)來首先記錄這個編號,然後每隔一定的時間(log_checkpoint_timeout)或者庫房平台上的糧食堆放到一定的數量或者倉庫伙計換班(log swtich)的時候,一個叫「點點」(CKPT)的後院家奴就會把倉庫伙計記錄的信息拿給帳房先生同時還會催促碼放在倉庫平台的糧食入倉或者出倉(DBWn),帳房先生根據「點點」拿來的帳頁記錄到自己的帳本上。這樣一來每天老闆要和賬房先生、倉庫伙計進行賬務的核對,一旦發現倉庫伙計記錄了而帳房先生沒記錄的情況就要求帳房先生把伙計記錄的信息謄寫到自己的帳本上,而如果發現帳房先生有記錄了而倉庫伙計這里卻沒有,那就麻煩大了,這說明倉庫伙計有可能把之前的記錄帳頁給丟掉了,也就意味著糧食有丟失的危險,不過也不用過分擔心,老闆手下還有一個給力干將肢盯叫「SMON」, 是的,之所以給力就是因為是個洋和尚,外來的和尚會念經嘛。這個"SMON"的洋和尚會想辦法去找這些編號的糧食,一旦找到就會讓倉庫伙計按照帳房先生的記錄來重新同步自己的帳本,這事就算是完了,可一旦連「SMON」都鋒飢缺搞不定,那麼老闆就頭大了,生意就得關張,意味著有糧食可能會丟失。這時候要麼從其他地方找來一摸一樣的糧食充數,還要讓帳房先生和倉庫伙計的帳本都清空從0開始重新記錄,以免又出現不同的情況。
不知道夠不夠白。。。。。
oracle資料庫的控制文件包含了以下信息:
1、資料庫名稱
2、資料庫創建的時間戳
3、相關的數據文件、重演日誌文件的名稱和位置
4、表空間信息
5、數據文件離線范圍
6、日誌歷史
7、歸檔日誌信息
8、備份組和備份塊信息
9、文件和重演日誌信息
10、數據文件拷貝信息
11、當前日誌序列數
12、檢查點(checkpoint)信息
(2)在哪些文件中更新檢查點信息擴展閱讀
Oracle資料庫中,資料庫控制文件維護著資料庫的全局物理結構,用以支持資料庫成功的啟動和運行。創建資料庫時,同時就提供了與之對應的資料庫控制文件。
在資料庫使用過程中,Oracle不斷的更新資料庫控制文件,所以只要資料庫是打開的,資料庫控制文件就必須處於可寫狀態。如果,猶豫某些原因控制文件不能被訪問,那麼資料庫也就不能正常的工作了。
每一個控制文件只能與一個Oracle資料庫相關聯。資料庫控制文件包含了資料庫實例的啟動和正常操作時,訪問資料庫所需的關於資料庫的信息。資料庫控制文件的內容只有Oralce可以修改,資料庫管理員和用戶都不能對其進行編輯。