oracle歸檔模式

來源:互聯網
上載者:User

目錄

查看oracle資料庫是否為歸檔模式

什麼是Oracle歸檔模式

設定資料庫的歸檔模式

查看oracle資料庫是否為歸檔模式

  [1]

  1.select name,log_mode from v$database;

  NAME LOG_MODE

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

  QUERY NOARCHIVELOG

  2.使用ARCHIVE LOG LIST 命令

  Database log mode No Archive Mode

  Automatic archival Disabled

  Archive destination /data/oracle/product/10.2.0/db_1//dbs/arch

  Oldest online log sequence 739

  Current log sequence 741

什麼是Oracle歸檔模式

  Oracle資料庫有聯機重做日誌,這個日誌是記錄對資料庫所做的修改,比如插入,刪除,更新資料等,對這些操作都會記錄在聯機重做日誌裡。一般資料庫至少要有2個聯機重做日誌組。當一個聯機重做日誌組被寫滿的時候,就會發生日誌切換,這時聯機重做日誌組2成為當前使用的日誌,當聯機重做日誌組2寫滿的時候,又會發生日誌切換,去寫聯機重做日誌組1,就這樣反覆進行。

  如果資料庫處於非歸檔模式,聯機日誌在切換時就會丟棄. 而在歸檔模式下,當發生日誌切換的時候,被切換的日誌會進行歸檔。比如,當前在使用聯機重做日誌1,當1寫滿的時候,發生日誌切換,開始寫聯機重做日誌2,這時聯機重做日誌1的內容會被拷貝到另外一個指定的目錄下。這個目錄叫做歸檔目錄,拷貝的檔案叫歸檔重做日誌。

  資料庫使用歸檔方式運行時才可以進行災難性恢複。

  1.歸檔記錄模式和非歸檔記錄模式的區別

  非歸檔模式只能做冷備份,並且恢複時只能做完全備份.最近一次完全備份到系統出錯期間的資料不能恢複.

  歸檔模式可以做熱備份,並且可以做增量備份,可以做部分恢複.

  用ARCHIVE LOG LIST 可以查看當前模式狀態是歸檔模式還是非歸檔模式.

設定資料庫的歸檔模式

  1.改變非歸檔模式到歸檔模式:

  1)SQL> conn / as sysdba (以DBA身份串連資料庫)

  2)SQL> shutdown immediate; (立即關閉資料庫)

  3)SQL> startup mount (啟動執行個體並載入資料庫,但不開啟)

  4)SQL> alter database archivelog; (更改資料庫為歸檔模式)

  5)SQL> alter database open; (開啟資料庫)

  6)SQL> alter system archive log start; (啟用自動歸檔)

  7)SQL> exit (退出)

  做一次完全備份,因為非歸檔記錄模式下產生的備份日誌對于歸檔模式已經不可用了.這一步非非常重要!

  2.改變歸檔模式到非歸檔模式:

  1)SQL>SHUTDOWN NORMAL/IMMEDIATE;

  2)SQL>STARTUP MOUNT;

  3)SQL>ALTER DATABASE NOARCHIVELOG;

  4)SQL>ALTER DATABASE OPEN;

  3.啟用自動歸檔: LOG_ARCHIVE_START=TRUE

  歸檔模式下,記錄檔組不允許被覆蓋(重寫),當記錄檔寫滿之後,如果沒有進行手動歸檔,那麼系統將掛起,知道歸檔完成為止.

  這時只能讀而不能寫.

  運行過程中關閉和重啟歸檔日誌進程

  SQL>ARCHIVE LOG STOP

  SQL>ARCHIVE LOG START

  4.手動歸檔: LOG_ARCHIVE_START=FALSE

  歸檔當前記錄檔

  SQL>ALTER SYSTEM ARCHIVE LOG CURRENT;

  歸檔序號為052的記錄檔

  SQL>ALTER SYSTEM ARCHIVE LOG SEQUENCE 052;

  歸檔所有記錄檔

  SQL>ALTER SYSTEM ARCHIVE LOG ALL;

  改變歸檔日誌目標

  SQL>ALTER SYSTEM ARCHIVE LOG CURRENT TO '&PATH';

  5.歸檔模式和非歸檔模式的轉換

  第4步的逆過程.

  6.配置多個歸檔進程

  Q:什麼時候需要使用多個歸檔進程?

  A:如果歸檔過程會消耗大量的時間,那麼可以啟動多個歸檔進程,這是個動態參數,可以用ALTER SYSTEM動態修改.

  SQL>ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=10;

  Oracle9i中最多可以指定10個歸檔進程

  與歸檔進程有關的動態效能檢視

  v$bgprocess,v$archive_processes

  7.配置歸檔目標,多歸檔目標,遠程歸檔目標,歸檔日誌格式

  歸檔目標 LOG_ARCHIVE_DEST_n

  本地歸檔目標:

  SQL>LOG_ARCHIVE_DEST_1 = "LOCATION=D:ORACLEARCHIVEDLOG";

  遠程歸檔目標:

  SQL>LOG_ARCHIVE_DEST_2 = "SERVICE=STANDBY_DB1";

  強制的歸檔目標,如果出錯,600秒後重試:

  SQL>ALTER SYSTEM SET LOG_ARCHIVE_DEST_4 = "LOCATION=E:ORACLEARCHIVEDLOG MANDATORY REOPEN=600";

  可選的歸檔目標,如果出錯,放棄歸檔:

  SQL>ALTER SYSTEM SET LOG_ARCHIVE_DEST_3 = "LOCATION=E:ORACLEARCHIVEDLOG OPTIONAL";

  歸檔目標狀態:關閉歸檔目標和開啟歸檔目標

  關閉歸檔目標1

  SQL>ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_1 = DEFER

  開啟歸檔目標2

  SQL>ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2 = ENABLE

  歸檔日誌格式

  LOG_ARCHIVE_FORMAT

  8.擷取歸檔日誌資訊

  V$ARCHIVED_LOG

  V$ARCHIVE_DEST

  V$LOG_HISTORY

  V$DATABASE

  V$ARCHIVE_PROCESSES

  ARCHIVE LOG LIST;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.