您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“怎么查看oracle數(shù)據(jù)庫是否歸檔”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么查看oracle數(shù)據(jù)庫是否歸檔”吧!
在ORACLE 數(shù)據(jù)庫的開發(fā)環(huán)境和測試環(huán)境中,數(shù)據(jù)庫的日志模式和自動歸檔模式一般都是不設置的,這樣有利于系統(tǒng)應用的調整,也免的生成大量的歸檔日志文件將磁盤空間大量的消耗。但在系統(tǒng)上線,成為生產(chǎn)環(huán)境時,將其設置為日志模式并自動歸檔就相當重要了,因為,這是保證系統(tǒng)的安全性,有效預防災難的重要措施。這樣,通過定時備份數(shù)據(jù)庫和在兩次備份間隔之間的日志文件,可以有效的恢復這段時間的任何時間點的數(shù)據(jù),可以在很多時候挽回或最大可能的減少數(shù)據(jù)丟失。
一、 要使OARCLE 數(shù)據(jù)庫進行日志的自動歸檔,需要做兩方面的事情;
1.是數(shù)據(jù)庫日志模式的設置(可為Archive Mode 和No Archive Mode);2.就是自動歸檔模式設置(Automatic archival,可為Enabled 和Disabled)。
二、 如何查看數(shù)據(jù)庫的現(xiàn)行日志和自動歸檔模式的設置
可用archive log list 命令來查看。
運行在日志自動歸檔模式下的數(shù)據(jù)庫系統(tǒng)查看結果如下(一般是生產(chǎn)環(huán)境):
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /backup/archivelog
Oldest online log sequence 2131
Next log sequence to archive 2133
Current log sequence 2133
沒有啟動數(shù)據(jù)庫日志模式和自動歸檔的數(shù)據(jù)庫系統(tǒng)查看結果如下(一般是測試環(huán)境):
SQL> archive log list
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination /u01/app/oracle/product/8.1.7/dbs/arch
Oldest online log sequence 194
Current log sequence 196
三. 數(shù)據(jù)庫日志模式的設置
在創(chuàng)建數(shù)據(jù)庫時,可以在CREATE DATABASE 語句中指定數(shù)據(jù)庫的日志模式。假如沒有指明,則缺省為NOARCHIVELOG 模式。由于如果在創(chuàng)建數(shù)據(jù)庫時指明是Archive Mode的話,會增加約20%的創(chuàng)建時間,而在以后啟動INSTANCE 時再設置的話,一般只用去幾秒的時間,所以一般在創(chuàng)建數(shù)據(jù)庫時是不設置為ARCHIVE MODE 的。
將數(shù)據(jù)庫的日志模式設置切換(Archive Mode 和No Archive Mode 之間的切換)的步驟和操作如下:
1. 關閉運行的數(shù)據(jù)庫實例
SQL> shutdown
在進行日志模式切換之前,必須將運行的數(shù)據(jù)庫正常關閉。
2. 備份數(shù)據(jù)庫
該備份跟以后產(chǎn)生的日志一起用于將來的災難恢復(很重要,如要改為歸檔日志模式,沒有這個數(shù)據(jù)庫備份,僅有日志文件是無法從該時間點恢復的)。
3. 啟動數(shù)據(jù)庫實例到mount 狀態(tài),但不要打開。
SQL> startup mount
4. 切換數(shù)據(jù)庫日志模式。
SQL> alter database archivelog;(設置數(shù)據(jù)庫為歸檔日志模式)或
SQL> alter database noarchivelog;(設置數(shù)據(jù)庫為非歸檔日志模式)
5. 打開數(shù)據(jù)庫
SQL> alter database open;
6. 確認數(shù)據(jù)庫現(xiàn)在處于歸檔日志模式。
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination for example: $ORACLE_HOME/dbs/arch
Oldest on-line log sequence 275
Next log sequence 277
Current log sequence 278
7. 將這個時間點的redo logs 歸檔
SQL> archive log all;
8. 確認新產(chǎn)生的日志文件已在相應的歸檔目錄下面。
四. 自動歸檔模式設置(Automatic archival,可為Enabled 和Disabled)。
在該模式下,數(shù)據(jù)庫啟動一個arch 進程,專門負責將redo logs 寫到系統(tǒng)歸檔設備的相應目錄下。在數(shù)據(jù)庫的參數(shù)文件中設置參數(shù)(一般是在$ORACLE_HOME/dbs/init*.ora 文件中):
LOG_ARCHIVE_START=
LOG_ARCHIVE_DEST=
LOG_ARCHIVE_FORMAT=
LOG_ARCHIVE_START:
如要求自動歸檔的話,則設為TRUE,如要求為非自動歸檔的話,則設為FALSE
LOG_ARCHIVE_DEST:
該參數(shù)設定了archive logs 歸檔存放的路徑。
LOG_ARCHIVE_FORMAT:
該參數(shù)設定了archive logs 的命名格式。例如,如將格式設為: arch%s.arc
log 文件將為: arch2.arc, arch3.arc, arch4.arc
這幾個參數(shù)設置只有在數(shù)據(jù)庫實例啟動前設置才能生效,如果在數(shù)據(jù)庫運行中進行設置,要使其生效,必須重起數(shù)據(jù)庫。
如果數(shù)據(jù)庫正在運行中,不能即刻重起,要設置其為自動歸檔模式,則做如下操作:
SQL> ALTER SYSTEM ARCHIVE LOG START;
如要設置其為非自動歸檔模式(取消自動歸檔),則:
SQL> ALTER SYSTEM ARCHIVE LOG STOP;
但如果數(shù)據(jù)庫重起后,給語句修改的結果就失效了,自動歸檔的設置還是按照系統(tǒng)參數(shù)文件中的LOG_ARCHIVE_START 的值來設置。
五. 幾種設置情況:
1. Database log mode Archive Mode,Automatic archival Enabled
這是在大部分生產(chǎn)環(huán)境中的ORACLE 數(shù)據(jù)庫日志及歸檔模式設置,這種情況下,做好數(shù)據(jù)庫的定期備份(有熱備和冷備)和歸檔日志備份,可有效的將數(shù)據(jù)庫恢復到有歸檔日志的全部時間點。
2. Database log mode Archive Mode,Automatic archival Disabled
這種情況下,數(shù)據(jù)庫不能自動歸檔,需要進行手工歸檔。如果所有在線日志都寫滿了,又沒有的及時進行手工歸檔的話,由于LGWR 沒有可用的在線日志可寫,數(shù)據(jù)庫將會掛在這兒,只有進行手工歸檔后,有可用的在線日志后才能繼續(xù)。在生產(chǎn)環(huán)境中應該避免這種情況。
手工歸檔操作如下:
SQL> ALTER SYSTEM ARCHIVE LOG ALL;
數(shù)據(jù)庫將會把在線日志進行歸檔處理
3. Database log mode NO Archive Mode,Automatic archival Enabled
有些情況下,數(shù)據(jù)庫管理員只在數(shù)據(jù)庫參數(shù)文件中設置了LOG_ARCHIVE_START=TRUE,然后在數(shù)據(jù)庫起來后查看到ARCH 歸檔進程已經(jīng)起來了,可是盡管ORACLE 已經(jīng)作了幾次日志切換,但還是沒有歸檔日志,這時的設置就是這種情況,如果數(shù)據(jù)庫不是處在ARVHIVELOG 模式,redolog 還是不會被歸檔。
4. Database log mode NO Archive Mode,Automatic archival Disabled
這種設置是剛安裝的oracle 數(shù)據(jù)庫的缺省設置,開發(fā)環(huán)境也大部分如此。即沒有進行歸檔。
如何手工刪除歸檔日志文件?(如果采用RMNA備份后則不用手工刪除)
一、先手工刪除歸檔日志文件
二、用RMAN刪除數(shù)據(jù)庫記錄的歸檔列表信息
1) 進入本數(shù)據(jù)庫的rman,在命令行模式輸入"rman target /",進入rman,查看提示,確認連接的是否是本庫?
2) 查看歸檔日志文件的狀態(tài):
RMAN> list archivelog all;
3) 刪除操作系統(tǒng)中的日志文件(到操作系統(tǒng)級進行手工刪除,也可以是第一步;
4) 將歸檔日志信息進行更新;
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all; (確認時鍵入"yes")
RMAN> exit
到此,相信大家對“怎么查看oracle數(shù)據(jù)庫是否歸檔”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。