您好,登錄后才能下訂單哦!
計(jì)算機(jī)操作的文件越大,系統(tǒng)的效率越低,因此,日志文件應(yīng)該盡可能地小,但文件過(guò)小又會(huì)導(dǎo)致日志文件頻繁切換,引發(fā)完全檢查點(diǎn),導(dǎo)致系統(tǒng)掛起
所謂的重做日志維護(hù)或修復(fù),就是將有問(wèn)題的重做日志組或日志成員刪掉,之后再重建它們??梢圆僮髦刈鋈罩窘M也可以操作成員,通常建議操作日志組。
添加日志組:
SQL> ALTER DATABASE ADD LOGFILE
('/u01/app/oracle/onlinelog/redo_01a.log', '/u02/app/oracle/onlinelog/redo_01b.log')
SIZE 100M;
刪除日志組:
SQL> ALTER DATABASE DROP LOGFILE GROUP 4;
ASM 應(yīng)用中為重做日志組添加新成員:
由于使用 ASM 自動(dòng)管理文件,所以只需要指定 ASM 磁盤組,不需要指定文件路徑和文件名,如果指定具體文件路徑和文件名也是可以的
SQL> ALTER DATABASE ADD LOGFILE MEMBER '+ASM_RCY' REUSE TO GROUP 1;
如下圖:
online redolog 文件狀態(tài):
空白:表示該文件正在使用
stale:表示該文件中的內(nèi)容是不完全的
invalid:表示該文件不可以被訪問(wèn)
deleted:表示該文件已不再有用了
刪除日志成員:
SQL> ALTER DTABASE DROP LOGFILE MEMBER '/u01/app/oracle/onlinelog/redo_01.log';
不能刪除當(dāng)前組的成員,如果要?jiǎng)h除,應(yīng)先使用 ALTER SYSTEM SWITCH LOGFILE 命令進(jìn)行切換;
如果要?jiǎng)h除剛剛加入的狀態(tài)為 invalid 的成員,正常的操作方法可能需要發(fā)若干個(gè) ALTER SYSTEM SWITCH LOGFILE 命令多次進(jìn)行切換,要等很久,比較快捷的方法是:先關(guān)閉數(shù)據(jù)庫(kù),在開(kāi)啟數(shù)據(jù)庫(kù),這時(shí)候就可以順利刪除了。
每個(gè)日志組至少有一個(gè)成員才能正常工作
清除 online redo logfile
有時(shí)不能用刪除重建的方式來(lái)維護(hù)日志組,如:數(shù)據(jù)庫(kù)中只有兩個(gè)日志組或崩潰的日志文件屬于當(dāng)前日志組。在這種情況下,如果數(shù)據(jù)庫(kù)是開(kāi)啟的話,由于一個(gè)聯(lián)機(jī)日志文件崩潰使得歸檔活動(dòng)不能正常進(jìn)行,最終導(dǎo)致數(shù)據(jù)庫(kù)被掛起。
此時(shí)可以使用如下命令來(lái)重新初始化聯(lián)機(jī)重做日志文件:
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 組號(hào);
如果崩潰的日志文件已經(jīng)不能歸檔(組內(nèi)所有成員都?jí)牧耍?,可以在以上命令中使?UNARCHIVED 關(guān)鍵詞來(lái)清除已崩潰的重做日志文件,從而避免對(duì)它們進(jìn)行歸檔,其命令格式如下:
SQL> ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 組號(hào);
注:執(zhí)行了以上命令中的任何一個(gè),都將導(dǎo)致 Oracle 數(shù)據(jù)庫(kù)以前的備份失效,所以接下來(lái)應(yīng)該做一個(gè)全備份。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。