達夢資料庫DM8之刪除歸檔日誌檔案
達夢資料庫DM8之刪除歸檔日誌檔案
1. 檢視歸檔日誌資訊
1)檢查本地歸檔日誌資訊
[dmdba@dmdb01 arch]$ pwd
/dm8/dmdbms/data/dm01/arch
[dmdba@dmdb01 arch]$ ls -lrt
total 1052812
-rw-r--r-- 1 dmdba dinstall 356352 Apr 24 22:12 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-24_21-20-29.log
-rw-r--r-- 1 dmdba dinstall 430080 Apr 25 19:19 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-25_10-53-19.log
-rw-r--r-- 1 dmdba dinstall 307712 Apr 26 12:13 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-00-37.log
-rw-r--r-- 1 dmdba dinstall 494592 Apr 26 12:35 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-13-08.log
-rw-r--r-- 1 dmdba dinstall 872448 Apr 26 19:41 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-47-17.log
-rw-r--r-- 1 dmdba dinstall 827904 Apr 27 20:09 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-27_11-42-08.log
-rw-r--r-- 1 dmdba dinstall 360960 Apr 28 22:11 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-28_19-54-50.log
-rw-r--r-- 1 dmdba dinstall 353280 Apr 29 18:31 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-29_14-13-07.log
-rw-r--r-- 1 dmdba dinstall 316928 May 6 11:56 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-32-02.log
-rw-r--r-- 1 dmdba dinstall 1073741824 May 6 13:44 ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-57-55.log
[dmdba@dmdb01 arch]$
2)使用v$arch_file檢查歸檔日誌資訊
SQL> select arch_seq,path,status,arch_lsn from v$arch_file;
行號 ARCH_SEQ PATH STATUS ARCH_LSN
---------- ------------ ------------------------------------------------------------------------------- -------- --------------------
1 4226 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-24_21-20-29.log INACTIVE 25220
2 4245 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-25_10-53-19.log INACTIVE 27883
3 4322 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-00-37.log INACTIVE 30654
4 4342 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-13-08.log INACTIVE 33028
5 4491 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-47-17.log INACTIVE 34747
6 4655 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-27_11-42-08.log INACTIVE 38858
7 5071 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-28_19-54-50.log INACTIVE 43354
8 5105 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-29_14-13-07.log INACTIVE 45989
9 5146 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-32-02.log INACTIVE 48566
10 5172 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-57-55.log ACTIVE 50939
10 rows got
已用時間: 0.253(毫秒). 執行號:523.
SQL>
2. 刪除歸檔日誌方法
方法1: 設定歸檔空間大小
在配置資料庫歸檔的時候,可以設定ARCH_SPACE_LIMIT 引數。 該參數列示歸檔檔案的磁碟空間限制,如果歸檔檔案總大小超過這個值,
則在生成新歸檔檔案前會刪除最老的一個歸檔檔案。
SQL> ALTER DATABASE ADD ARCHIVELOG 'DEST=/dm8/dmdbms/data/dm/arch, TYPE=LOCAL, FILE_SIZE=1024,
SPACE_LIMIT=51200 ';
或者
配置dmarch.ini檔案
[dmdba@dmdb01 ]$ cat dmarch.ini
#DaMeng Database Archive Configuration file
#this is comments
ARCH_WAIT_APPLY = 0
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/dmdbms/data/dm01/arch
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 51200
[dmdba@dmdb01 dm01]$
注意:將該引數設定為0,表示不受限制;一般建議參照檔案系統大小進行設定,例如/arch路勁50G,建議設定為50G。 建議參照備份
策略進行歸檔日誌的刪除,既能保障歸檔日誌的有效性,也能防止歸檔目錄滿了。
方法2: 備份歸檔時刪除
在離線備份和聯機備份中,備份歸檔時可以刪除備份的歸檔檔案,比如:
RMAN> backup archivelog all delete input to "ARCH_2022_05_06_14_05_00"
backupset '/dm8/dmdbms/data/dm01/bak/ARCH_2022_05_06_14_05_00';
SQL> backup archivelog lsn between 38858 and 43354 delete input to "ARCH_2022_05_06_14_18_01"
backupset 'ARCH_2022_05_06_14_18_01';
SQL> select arch_seq,path,status,arch_lsn from v$arch_file;
行號 ARCH_SEQ PATH STATUS ARCH_LSN
---------- -------------------- ------------------------------------------------------------------------------- -------- --------------------
1 5105 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-29_14-13-07.log INACTIVE 45989
2 5146 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-32-02.log INACTIVE 48566
3 5172 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-57-55.log INACTIVE 50939
4 5211 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_14-12-14.log ACTIVE 53378
已用時間: 0.269(毫秒). 執行號:1001.
SQL>
[dmdba@dmdb01 ARCH_2022_05_06_14_18_01]$ ls -l
total 1244
-rw-r--r-- 1 dmdba dinstall 1193984 May 6 14:12 ARCH_2022_05_06_14_18_01.bak
-rw-r--r-- 1 dmdba dinstall 74240 May 6 14:12 ARCH_2022_05_06_14_18_01.meta
[dmdba@dmdb01 ARCH_2022_05_06_14_18_01]$
SQL> backup archivelog time between '2022-04-06 14:24:03' and '2022-05-01 14:24:03' delete input
to "ARCH_2022_05_06_14_24_03" backupset 'ARCH_2022_05_06_14_24_03';
SQL> select arch_seq,path,status,arch_lsn from v$arch_file;
行號 ARCH_SEQ PATH STATUS ARCH_LSN
---------- -------------------- ------------------------------------------------------------------------------- -------- --------------------
1 5172 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-57-55.log INACTIVE 50939
2 5211 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_14-12-14.log INACTIVE 53378
3 5216 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_14-18-08.log ACTIVE 53386
已用時間: 0.351(毫秒). 執行號:1002.
SQL>
[dmdba@dmdb01 ARCH_2022_05_06_14_24_03]$ ls -l
total 736
-rw-r--r-- 1 dmdba dinstall 675328 May 6 14:18 ARCH_2022_05_06_14_24_03.bak
-rw-r--r-- 1 dmdba dinstall 74240 May 6 14:18 ARCH_2022_05_06_14_24_03.meta
[dmdba@dmdb01 ARCH_2022_05_06_14_24_03]$
方法3: 使用系統函式刪除
通過SF_ARCHIVELOG_DELETE_BEFORE_TIME 和SF_ARCHIVELOG_DELETE_BEFORE_LSN 函式來直接刪除指定時間或者LSN之前的歸檔檔案。
歸檔日誌的有效 LSN 範圍可以通過 V$ARCH_FILE 檢視。
SQL> select arch_seq,path,status,arch_lsn from v$arch_file;
行號 ARCH_SEQ PATH STATUS ARCH_LSN
---------- ------------ ------------------------------------------------------------------------------- -------- --------------------
1 4226 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-24_21-20-29.log INACTIVE 25220
2 4245 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-25_10-53-19.log INACTIVE 27883
3 4322 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-00-37.log INACTIVE 30654
4 4342 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-13-08.log INACTIVE 33028
5 4491 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-47-17.log INACTIVE 34747
6 4655 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-27_11-42-08.log INACTIVE 38858
7 5071 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-28_19-54-50.log INACTIVE 43354
8 5105 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-29_14-13-07.log INACTIVE 45989
9 5146 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-32-02.log INACTIVE 48566
10 5172 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-57-55.log ACTIVE 50939
10 rows got
已用時間: 0.253(毫秒). 執行號:523.
SQL>
1)刪除10天之前的歸檔日誌:
SELECT SF_ARCHIVELOG_DELETE_BEFORE_TIME(SYSDATE - 10); --執行後顯示刪除的歸檔日誌個數
SQL> SELECT SF_ARCHIVELOG_DELETE_BEFORE_TIME(SYSDATE - 10);
行號 SF_ARCHIVELOG_DELETE_BEFORE_TIME(SYSDATE-10)
---------- --------------------------------------------
1 4
已用時間: 1.756(毫秒). 執行號:524.
SQL> select arch_seq,path,status,arch_lsn from v$arch_file;
行號 ARCH_SEQ PATH STATUS ARCH_LSN
---------- ------------ ------------------------------------------------------------------------------- -------- --------------------
1 4491 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-26_12-47-17.log INACTIVE 34747
2 4655 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-27_11-42-08.log INACTIVE 38858
3 5071 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-28_19-54-50.log INACTIVE 43354
4 5105 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-29_14-13-07.log INACTIVE 45989
5 5146 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-32-02.log INACTIVE 48566
6 5172 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-57-55.log ACTIVE 50939
6 rows got
已用時間: 0.384(毫秒). 執行號:525.
SQL>
2)刪除 LSN 值小於 38858 之前的歸檔日誌檔案: --執行後顯示刪除的歸檔日誌個數
SELECT SF_ARCHIVELOG_DELETE_BEFORE_LSN(38858);
SQL> SELECT SF_ARCHIVELOG_DELETE_BEFORE_LSN(38858);
行號 SF_ARCHIVELOG_DELETE_BEFORE_LSN(38858)
---------- --------------------------------------
1 1
已用時間: 0.856(毫秒). 執行號:526.
SQL> select arch_seq,path,status,arch_lsn from v$arch_file;
行號 ARCH_SEQ PATH STATUS ARCH_LSN
---------- ------------ ------------------------------------------------------------------------------- -------- --------------------
1 4655 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-27_11-42-08.log INACTIVE 38858
2 5071 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-28_19-54-50.log INACTIVE 43354
3 5105 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-04-29_14-13-07.log INACTIVE 45989
4 5146 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-32-02.log INACTIVE 48566
5 5172 /dm8/dmdbms/data/dm01/arch/ARCHIVE_LOCAL1_0x58BC45F2[0]_2022-05-06_11-57-55.log ACTIVE 50939
5 rows got
已用時間: 0.427(毫秒). 執行號:527.
SQL>
方法4: 直接在作業系統上刪除
如果歸檔確認不在需要,也可以直接在作業系統上 rm命令刪除。當然,生產環境建議是對歸檔檔案備份之後在刪除,以防在資料庫恢復時
需要這些歸檔檔案。
達夢資料庫社群地址:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70017402/viewspace-2892530/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 達夢資料庫DM8之REDOLOG重做日誌檔案管理資料庫
- 刪除歸檔日誌檔案
- Oralce資料庫關閉歸檔日誌並且刪除歸檔日誌資料庫
- oracle刪除歸檔日誌Oracle
- 歸檔日誌的刪除
- Oracle歸檔日誌刪除Oracle
- 如何正確刪除ORACLE歸檔日誌檔案Oracle
- 刪除data guard歸檔日誌
- 手動刪除歸檔日誌
- 作用RMAN 刪除歸檔日誌
- 當ORACLE歸檔日誌滿後如何正確刪除歸檔日誌Oracle
- 誤刪歸檔日誌除導致備份歸檔日誌失敗
- 刪除歸檔,保留最近的5個歸檔日誌
- 在Oracle中,如何定時刪除歸檔日誌檔案?Oracle
- 達夢資料庫:誤刪除 undo/redo 日誌怎麼辦資料庫
- 達夢資料庫[-718]收集到的歸檔日誌不連續資料庫
- 新增、刪除日誌檔案
- 手工rm刪除歸檔日誌對備份歸檔日誌的影響
- RMAN delete archivelog命令刪除歸檔日誌及歸檔日誌拷貝deleteHive
- 刪除日誌檔案組與日誌檔案成員
- window下刪除過舊的日誌檔案指令碼(如jboss的日誌檔案 資料庫的trace檔案)指令碼資料庫
- 邏輯dg刪除主庫過期歸檔日誌
- oracle 刪除過期的歸檔日誌Oracle
- rman刪除歸檔日誌命令集
- crontab不能自動刪除歸檔日誌
- oracle dataguard 自動刪除歸檔日誌Oracle
- 歸檔日誌刪除的五種方法
- 如何定期自動刪除歸檔日誌
- 【Oracle】 rman 刪除歸檔日誌的命令Oracle
- 【警鐘】謹慎刪除歸檔日誌
- 達夢資料庫歸檔方式及其配置方法資料庫
- 建立資料庫檔案-日誌檔案-次要資料庫檔案資料庫
- RMAN備份資料檔案+控制檔案+歸檔日誌
- pg 資料庫日誌檔案誤刪除後的應對方案資料庫
- 丟失已歸檔日誌檔案下恢復資料庫資料庫
- 備庫自動刪除已應用的歸檔日誌
- 用rman 正確地刪除歸檔日誌
- rac+dg環境刪除歸檔日誌