康哥教你如何有效管理重做日誌檔案

2021-09-20 20:06:42 字數 2724 閱讀 7838

有的人可能還不知道什麼是重做日誌檔案,其實就是你的oradata目錄下面的那幾個redo.log檔案。

作用:當你的資料庫崩潰的時候,管理員可以通過重做日誌檔案和資料庫備份檔案,把資料庫恢復到最近一次記錄日誌時的狀態。

在建立oracle資料庫的時候,預設建立了3個重做日誌組(對於資料庫來說,至少需要2個重做日誌組),每乙個日誌組包含乙個或者多個重做日誌檔案。

每乙個重做日誌組都有自己的內部序號,oracle按照序號從小到大的順序向日誌組中寫入日誌資訊。當乙個重做日誌組寫滿後,後台程序lgwr開始寫入下乙個重做日誌組,依次類推,假如說所有的重做日誌組都寫滿了,則從第乙個日誌組開始覆蓋重寫,如此迴圈寫入。

其中,重做日誌檔案有三種狀態:

current(當前狀態):正在被lgwr程序寫入

active(活動狀態):

正在被例項用於資料庫恢復

inactive(未活動狀態):顧名思義,就是沒被使用的狀態

日誌組狀態可以通過檢視v$log進行檢視:

好,接下來我們開始搞一下如下幾個技術點:

⒈增加日誌組及其成員

實際工作中,為了防止後台程序lgwr等待寫入日誌組導致效率太低,作為管理員,我們要增加重做日誌組。注意:重做日誌檔案的大小一般在10m - 50m之間,預設是50m。

接下來我就在資料庫中新增乙個日誌組(日誌組是由日誌檔案組成的,我們只能查到日誌組序號,看到的只是日誌檔案):

如上圖所示,紅框中是直接建立了日誌組4,預設序號是往後面自動排的。也可以在增加日誌組的時候直接指定組序號,如藍框中的語句。

⒉建立日誌組中的日誌檔案

舉例:為第5個重做日誌組新增乙個新的日誌檔案

注意:

a:如果我們在工作中發現存放某個日誌檔案的磁碟損壞了,這時候就需要刪除該損壞磁碟的日誌檔案,防止oracle將重做日誌繼續寫入到損壞的日誌檔案中。

① 如果整個日誌檔案組都不再需要(刪除日誌組,其中的成員日誌檔案也會刪除)

其中:

ⅰ.乙個資料庫至少需要兩個重做日誌組,刪除時不能超過這個限制;

ⅱ.只能刪除處於inactive狀態的日誌組,如果要刪除處於current狀態的日誌組,則必須手動切換日誌,將它切換到inactive狀態。

切換日誌組方法如下:

ⅲ.如果資料庫處於歸檔狀態,在刪除重做日誌組之前必須確定目標日誌組已經歸檔。

② 僅僅只是刪除日誌組成員

舉例:刪除第4個日誌組中的成員redo4_2.log,如下圖所示:

需要注意的是,無論是刪除日誌組還是刪除日誌成員,刪除的都只是資料字典和控制檔案中的日誌組和日誌成員資訊,對應的物理檔案並沒有刪除。開啟我的linux裡面,給大家看一下就會發現,我的物理檔案還是存在的。若要刪除,則需要手工乾掉。(window更簡單,這裡不講)

③ 清空日誌檔案

舉例:清空第4個日誌組中的所有日誌檔案內容

b:如果你的某乙個日誌檔案存放在/home目錄下,結果磁碟空間不足,是不是應該把日誌檔案移動到別的盤呢?怎麼移動呢?步驟如下:

① 關閉資料庫

② 手動複製原始檔到目標位置

③ 啟動例項,載入資料庫,但不開啟資料庫

④ 重新設定重做日誌檔案的路徑

注意:to上面的是原始檔路徑,下面的是目標檔案路徑。

⑤ 開啟資料庫

ok,到此為止已經成功更改了重做日誌檔案路徑,現在系統使用的redo4*.log的路徑是/home/oracle/backup下面的redo4_1bak.log,來,我們通過檢視資料字典檢視v$logfile證實一把:

特別地,檢視重做日誌資訊常用檢視:

v$log 檢視重做日誌組資訊

v$logfile 檢視日誌組中日誌檔案資訊

v$log_history 檢視日誌歷史資訊

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈!

看到了吧?

就是這麼好玩

就是這麼6

有木有?

教你如何管理時間

一 個人時間管理關鍵 設立明確目標 成功,就是完成目標。個人時間管理的目的是讓你在最短時間內實現更多你想要實現的目標 你必須把今年度4到10個目標寫出來,找出乙個核心目標,並依次排列重要性,然後依照你的目標設定一些詳細的計畫,你的關鍵就是依照計畫進行。二 個人時間管理關鍵 要列一張總清單,把今年所要...

4個例項教你如何有效分析使用者需求?

各行各業面對不同的使用者有不同的需求,只有根據自己的 來分析使用者的需求,才能把自己產品 服務 輕而易舉的賣出去。那如何對使用者的需求進行分析呢?除了下拉框可以看到使用者需求外,在搜尋結果底部有9個相關片語,可通過此片語更加詳細的了解使用者需求。拿 統計第三大平台51.la統計舉例,51啦作為一家第...

如何有效進行專案集管理

隨著企業的擴張,業務往來日益增多,企業同時開展多個專案是不可避免的,如何有效進行多專案管理,是許多企業急需解決的問題。這一趨勢導致多專案管理角色的興起。它與專案高效和諧地配合,為企業的快速發展提供了動力。如今,大多數企業參與到多專案管理中,但他們仍然在尋找應對這種環境複雜性的最佳工具。有趣的是,許多...