刪除 ORACLE ARCHIVE LOG

下面指令,都請至該台DB SERVER cmd模式下執行

1.查看archive相關設定值

c:\>sqlplus / as sysdba
SQL> SHOW PARAMETER ARCH

NAME                                 TYPE        VALUE
—————————- ——– ——————-
………(篇幅關係 上面還有,只取下面)
log_archive_dest_state_9     string   enable
log_archive_duplex_dest      string
log_archive_format           string   ARC%S_%R.%T
log_archive_local_first      boolean  TRUE
log_archive_max_processes    integer  2
log_archive_min_succeed_dest integer  1
log_archive_start            boolean  FALSE
log_archive_trace            integer  0
remote_archive_enable        string   true
standby_archive_dest         string   %ORACLE_HOME%\RDBMS
SQL>EXIT

 

2.查看寫入目錄路徑及目錄size限制
c:\>sqlplus / as sysdba
SQL> show parameter db_recovery

NAME                                           TYPE            VALUE
———————————— ————–  —————————————-
db_recovery_file_dest           string          D:\oracle\flash_recovery_area
db_recovery_file_dest_size  big integer 20G

上面的資訊表示  D:\oracle\flash_recovery_area\ 不能超過20G,
否則oracle會罷工的。

3.刪除archive log

1.執行下面指令,注意!!target 與 / 中間有空格
C:\>Rman target /          
RMAN> backup archivelog all delete input;

channel ORA_DISK_1: backup set complete, elapsed time: 00:29:36
channel ORA_DISK_1: deleting archive log(s)
archive log filename=D:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\ARC00807_0618831482.001
recid=798 stamp=650904762
archive log filename=D:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\ARC00808_0618831482.001
recid=799 stamp=650935209
…………..
Finished backup at 02-MAY-08
RMAN>exit;

2.可能還會有另一份Archive log需刪除。
  查看 剛剛參數,一般預設如下
  standby_archive_dest    string   %ORACLE_HOME%\RDBMS
  則
  檢查 D:\oracle\product\10.2.0\db_1\RDBMS\
  若還有ARC*.* 請自行刪除。

 

  補充:
    1.若是您手動到D:\oracle\flash_recovery_area\目錄
       刪除archive log,手動刪除的,
      就算執行了backup archivelog all delete input;
      因為元配不在,
      副的(D:\oracle\product\10.2.0\db_1\RDBMS\arc*.*)
       也不會刪,

      以後請勿直接去os刪archive。
      直接執行下面指令,即可一併刪除。
      backup archivelog all delete input;
    

    2.使用backup archivelog all delete input; 仍不行?
      有可能磁碟容量大爆滿,rman要備份後刪除也不行
      可以改用下面的指令:
        C:\>Rman target /
        RMAN>delete force noprompt archivelog until time 'sysdate – 5';
        RMAN>exit;
      完成
    

    3.要是您無法使用EM的自動備份後刪除archivelog?

      同事傳授的方法:(使用rman的run script作法)

3.1 產生一bat如下:

          rman target=/ cmdfile=c:\rman.txt

3.2 產生c:\rman.txt內容如下:(每次都只保留5天內的archive log)
         delete force archivelog until time 'sysdate – 5';
         exit;

3.3 最後把bat放到排程,每天執行一次。

4.大絕招增加空間(因為後來還是有遇到上面的方法都不行的)
     到db console 用 sqlplus / as sysdba登入 執行下面指令 增大空間到100g
     (每個人空間不一樣請自行更正)

SQL> ALTER SYSTEM SET db_recovery_file_dest_size=100g scope=both;

SQL> shutdown immediate;

SQL> startup;

其實到補充3應該就要能可以了,原因是flash_recovery_area目錄下不只擺archive log 檔案還有backupfile目錄(備份檔案)。

一直以來遇到這類問題大家的焦點都擺在怎麼清除archive 其實若有定期做排程備份也是一個佔空間的原因,下次有時間在找出指令刪除備份檔

[oracle@example ~]$ sqlplus /nolog
SQL*Plus: Release 10.2.0.5.0 – Production on Tue Oct 4 13:54:37 2011
Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.
SQL> conn / as sysdba;
Connected.

SQL> show parameter db_recovery
NAME                       TYPE        VALUE
————————   ——-     ———————
db_recovery_file_dest      string      /u01/app/oracle/flash_recovery_area
db_recovery_file_dest_size big integer 20G
Delete archive log
備份後刪除:
[oracle@ksfm2 ~]$ rman target /
Recovery Manager: Release 10.2.0.5.0 – Production on Tue Oct 4 14:21:52 2011
Copyright (c) 1982, 2007, Oracle.  All rights reserved.
connected to target database: KCLV (DBID=3445048213)
RMAN> CROSSCHECK ARCHIVELOG ALL;
….
….
RMAN> BACKUP ARCHIVELOG ALL DELETE ALL INPUT;
直接刪除不備份
RMAN> delete force noprompt archivelog until time 'sysdate – 7';
RMAN> exit;
Shell Scripts 清除範例,可以排在 Cron job
(1) clearArchivelogs.sh
1
2
3
4
5
6
7
8
9
10
11
#!/bin/bash
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=ORCL
export RMAN_CMDFILE=RMAN_CMDFILE

$ORACLE_HOME/bin/rman target=/ cmdfile=$RMAN_CMDFILE

# Cleaning Empty Folder
find /u01/app/oracle/flash_recovery_area/ORCL/archivelog -type d -empty -exec rm -rf {} \;
 
(2) RMAN_CMDFILE
delete force archivelog until time 'sysdate – 7';
exit;

Read more

How to migrate Raspberry Pi 5 OS from micro SD to NVME m.2 SSD

首先我買了Raspberry Pi CM5後來買了Raspberry Pi CM5 I/O board來當個人電腦使用,系統是安裝在256GB SD卡上運行的很好。用久了在開啟較肥的程式像Web Browser或LiberOffice會有慢半拍的反應,而有了升級NVME m.2 SSD念頭。 因為Raspberry Pi 5支援的最快PCIe gen3 x 4就不去考慮快的Gen4 or Gen5 m.2 SSD。找了ADATA出的 LEGEND 710入門級的產品,會利用HMB(Host Memory Buffer)來加速I/O速度,因為是Raspberry Pi OS kernel會認不得而無法正常使用 事先在SD卡的/boot/firmware/cmdline.txt 加入 kernel command line參數如下,然後重開機m.

By Phillips Hsieh

How to document Home Lab and Network

運維機房和跨域的網路,會遇到各式需求與問題,用對工具才能分析問題,個人覺得最重要的是使用能處理問題的工具。 推薦目前想學和正在使用的平台與軟體,協助將公司/家用機房文件化 佈告欄任務管理 Focalboard 白板可管理任務指派 網路架構文件編寫 netbox 精細管理網路設備與連接線路 IP 資源管理 phpipam 專注網路IP分配 邏輯塊文件編寫 draw.io 視覺化概念圖 機房設備管理 ITDB 管理設備生命週期與使用者

By Phillips Hsieh

如何在Raspberry Pi4上安裝Proxmox for ARM64

第一步 準備好Raspberry Pi 4 / CM4 4GB RAM,這裡要留意CM4如果是買有內建eMMC storage會限制不能使用SD卡開機而限制本地空間容量,如果沒有NAS外接空間或使用USB開機的話,建議買CM4 Lite插上大容量SD卡 第二步 去Armbian官網下載最小化Debian bookworm image https://www.armbian.com/rpi4b/ Armbian 25.2.2 Bookworm Minimal / IOT 然後寫入SD/USB開機碟,寫入方法參考官方文件 https://github.com/raspberrypi/usbboot/blob/master/Readme.md Note: 官方提供的預先設定系統方法,可以在Armbian初次啟動自動化完成系統設定。連結在此 https://docs.armbian.com/User-Guide_Autoconfig/

By Phillips Hsieh

世界越快心越慢

在晚飯後的休息時間,我特別享受在客廳瀏灠youtube上各樣各式創作者的影音作品。很大不同於傳統媒體,節目多是針對大多數族群喜好挑選的,在youtube上我會依心情看無腦的動畫、一些旅拍記錄、新聞時事談論。 尤其在看了大量的Youtube的分享後,我真的感受到會限制我的是我的無知,特別是那些我想都沒想過的實際應用,在學習後大大幫助到我的生活和工作層面。 休息在家時,我喜歡想一些沒做過的菜,動手去設計生活和工作上的解決方案,自己是真的很難閒著沒事做。 如創作文章,陪養新的習慣都能感覺到成長的喜悅,是不同於吃喝玩樂的快樂的。 創作不去限制固定的形式,文字是創作、影像聲音也是創作,記錄生活也是創作,我想留下的就是創造—》實現—》回憶,這樣子的循環過程,在留下的足跡面看到自己一路上的成長、失敗、絕望、重新再來。 雖然大部份的時候去做這些創作也不明白有什麼特別的意義,但不去做也不會留下什麼,所以呀不如反事都去試試看,也許能有不一樣的水花也許有意想不到的結果,投資自己永遠不會是失敗的決定,不是嗎?先問問自己再開始計畫下一步,未來沒人說得準。 像最近看youtube仍大一群人在為DOS開

By Phillips Hsieh