1. 程式人生 > >Oracle資料庫關閉歸檔功能及刪除歸檔日誌方法

Oracle資料庫關閉歸檔功能及刪除歸檔日誌方法

注意:資料庫歸檔功能的開啟和關閉需重啟例項。

一、查詢資料庫歸檔是否開啟

--返回值是ARCHIVELOG則開啟了歸檔模式;NOARCHIVELOG是未開啟。
CONN sys/[email protected] AS SYSDBA;
SELECT log_mode FROM v$database;
 

二、歸檔日誌日空間使用率查詢

--檢視歸檔日誌大小及使用情況。若SPACE_USED/SPACE_LIMIT > 30%,需進行日誌清理。
select * from v$recovery_file_dest;
 
--檢視歸檔日誌使用情況(按百分比)。如果 ARCHIVED LOG超過90%,Oracle隨時有宕機的危險。
select * from v$flash_recovery_area_usage;


三、歸檔日誌管理和應急處理

--登入RMAN (oracle使用者執行)
$ rman target sys/[email protected]
 
--歸檔日誌交叉檢查
RMAN> crosscheck archivelog all;
 
--只保留最近1天歸檔日誌,其它日誌都刪除
RMAN>delete archivelog until time 'sysdate-1';
 
--保留最近7天的歸檔日誌
RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';
 
--歸檔日誌,全部刪除
RMAN>delete expired archivelog all;
 
--觀察磁碟空間使用率是否正常
#df - hl
 
--增大歸檔日誌空間
SQL>alter system set db_recovery_file_dest_size=20G;

四、關閉資料庫歸檔功能

--1)以sysdba身份登入資料庫
conn sys/[email protected] as sysdba;
 
--2)檢視是否開啟歸檔功能。如果返回值為NOARCHIVELOG則未開啟,如果是ARCHIVELOG則開啟了歸檔模式。
select log_mode from v$database;
 
--3)關閉資料庫
shutdown immediate;
 
--4)啟動資料庫到MOUNT狀態
startup mount;
 
--5)關閉歸檔模式
alter database noarchivelog;
 
--6)開啟資料庫
alter database open;
 
--7)再次確定歸檔是否關閉
select log_mode from v$database;
 
--8)檢視歸檔歸檔路徑是否設定。如果沒有設定,則歸檔路徑預設為閃回區。
show parameter log_archive_dest;
 
--9)設定歸檔路徑
alter system set log_archive_dest_1='location=/u01/app/oracle/arch/orcl';
 
--10)檢視歸檔路徑是否改變
archive log list;
 
--11)切換日誌,進入歸檔目錄,檢視是否有歸檔生成
alter system switch logfile;


 

https://blog.csdn.net/JohnnySun2015/article/details/74196786