解決oracle報錯:ora-00257 archiver error. connect interval only,unit freed
阿新 • • 發佈:2018-11-30
通過navicat連線oralce資料庫時,發現彈出報錯:ora-00257 archiver error. connect interval only,unit freed
。
經查詢,大致定位為日誌滿了,需要清理日誌。
1、以oracle身份登入資料庫
su - oracle
2、進入Sqlplus控制檯
sqlplus /nolog
3、以系統管理員登入
connect / as sysdba
4、檢視空間使用率
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
CONTROL FILE 0 0
0
REDO LOG 0 0
0
ARCHIVED LOG 99.99 0
329
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
BACKUP PIECE 0 0
0
IMAGE COPY 0 0
0
FLASHBACK LOG 0 0
0
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
FOREIGN ARCHIVED LOG 0 0
0
7 rows selected.
很明顯,ARCHIVED LOG的產生了很多檔案,佔了99.99%的空間使用,對於無效日誌,需要處理下。使用rman
命令進行處理:
5、進入rman控制檯
# 若系統沒有rman 命令,可使用 find / -name rman 查詢檔案位置,並軟連結到 /usr/local/bin/rman 下即可
su - oracle
rman target /
當然也可以在第四步的sql控制檯輸入以下命令進入:
host
rman target /
6、檢查、並刪除已過期檔案
crosscheck archivelog all;
delete expired archivelog all;
若上述操作後,空間使用率還是很高,那麼需要手動指定清理了。
7、檢視下日誌情況
list archivelog all;
在空間使用率高的情況下,應該會輸出大量日誌檔案相關資訊。
8、根據實際,刪除某時間節點前的日誌
# 刪除三天前的日誌
DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-3';
還有很多相關的刪除日誌命令,一般這個也夠用了。不確定能不能刪的情況下,建議下備份日誌資料。
好了處理完畢後,在查詢空間使用情況:
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
CONTROL FILE 0 0
0
REDO LOG 0 0
0
ARCHIVED LOG 3.7 0
11
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
BACKUP PIECE 0 0
0
IMAGE COPY 0 0
0
FLASHBACK LOG 0 0
0
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
FOREIGN ARCHIVED LOG 0 0
0
7 rows selected.
使用率大大下降,重新在navicat連線資料庫,一切正常。