oracle日誌歸檔

文章出處:http://blog.csdn.net/robinson_0612/article/details/5784713   感謝作者的分享

 

--====================

-- Oracle 歸檔日誌

--====================

 

    Oracle可以將聯機日誌文件保存到多個不同的位置,將聯機日誌轉換爲歸檔日誌的過程稱之爲歸檔。相應的日誌被稱爲歸檔日誌。

 

一、歸檔日誌

    是聯機重做日誌組文件的一個副本

    包含redo記錄以及一個唯一的log sequence number

    對日誌組中的一個日誌文件進行歸檔,如果該組其中一個損壞,則另一個可用的日誌將會被歸檔

    對於歸檔模式的日誌切換,當日志歸檔完成後,下一個日誌才能被覆蓋或重新使用

    自動歸檔功能如開啓,則後臺進程arcn在日誌切換時自動完成歸檔,否則需要手動歸檔

    歸檔日誌用途

        恢復數據庫

        更新standby數據庫

        使用LogMiner 提取歷史日誌的相關信息

       

二、日誌的兩種模式

    1.非歸檔模式

        不適用與生產數據庫

        創建數據庫時,缺省的日誌管理模式爲非歸檔模式

        當日志切換,檢查點產生後,聯機重做日誌文件即可被重新使用

        聯機日誌被覆蓋後,介質恢復僅僅支持到最近的完整備份

        不支持聯機備份表空間,一個表空間損壞將導致整個數據庫不可用,需要刪除掉損壞的表空間或從備份恢復

        對於操作系統級別的數據庫備份需要將數據庫一致性關閉

        應當備份所有的數據文件、控制文件(單個)、參數文件、密碼文件、聯機日誌文件(可選)

 

    2.歸檔模式

        能夠對聯機日誌文件進行歸檔,生產數據庫強烈建議歸檔

        在日誌切換時,下一個即將被寫入日誌組必須歸檔完成之後,日誌組纔可以使用

        歸檔日誌的Log sequence number信息會記錄到控制文件之中

        必須有足夠的磁盤空間用於存放歸檔日誌

        Oracle 9i 需要設置參數log_archive_start=true 才能夠進行自動歸檔

        備份與恢復

            支持熱備份,且當某個非系統表空間損壞,數據庫仍然處於可用狀態,且支持在線恢復

            使用歸檔日誌能夠實現聯機或脫機時點恢復(即可以恢復到指定的時間點、指定的歸檔日誌或指定的SCN)

 

三、兩種模式的切換設置及手動歸檔

    1.非歸檔到歸檔模式

        a.一致性關閉數據庫(shutdown [immediate | transactional |normal])

        b.啓動到mount階段(startup mount)

        c.切換到歸檔模式(alter database archivelog  [manual])

        d.切換到open階段(alter database open)

        e.對數據做一個完整備份(full backup)

        --演示非歸檔到歸檔模式

            SQL> ARCHIVE LOG LIST    --查看數據庫是否處於歸檔模式

            Database log mode              No Archive Mode

            Automatic archival             Disabled

            Archive destination            USE_DB_RECOVERY_FILE_DEST

            Oldest online log sequence     14

            Current log sequence           16

            SQL> SELECT log_mode FROM v$database;  --查看數據庫是否處於歸檔模式

 

            LOG_MODE

            ------------

            NOARCHIVELOG       

 

            SQL> SHUTDOWN IMMEDIATE;     --一致性關閉數據庫

            Database closed.

            Database dismounted.

            ORACLE instance shut down.

            SQL> STARTUP MOUNT;         --啓動到mount狀態

            ORACLE instance started.

 

            Total System Global Area  251658240 bytes

            Fixed Size                  1218796 bytes

            Variable Size              75499284 bytes

            Database Buffers          171966464 bytes

            Redo Buffers                2973696 bytes

            Database mounted.

            SQL> ALTER DATABASE ARCHIVELOG;  --切換到自動歸檔模式

            Database altered.

            SQL> ALTER DATABASE OPEN;        --切換到open狀態

            Database altered.

            SQL> ARCHIVE LOG LIST;           --查看數據庫的歸檔狀態

            Database log mode              Archive Mode    --已置爲歸檔模式

            Automatic archival             Enabled         --對日誌進行自動歸檔

            Archive destination            USE_DB_RECOVERY_FILE_DEST

            Oldest online log sequence     14

            Next log sequence to archive   16

            Current log

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章