-- 4.Oracle 的归档日志文件(Archive log files)
/*************************************************************************************************************************************************************
-- 1. RMAN 备份,开启archivelog后,log过多过大造成造成磁盘空间不足
--查找所有存在的归档日志文件,并更新它的状态。
--如果一个归档日志文件在控制文件中有记录,但是实际在磁盘上不存在,那么它的状态会被标记为 expired(失效)。
RMAN> crosscheck archivelog all;
-- Oracle数据库中删除过期的归档日志
RMAN> delete noprompt expired archivelog all;
-- 命令将删除7天前的所有归档日志。
RMAN> delete noprompt archivelog all completed before 'sysdate-2';
Oracle 的归档日志文件(Archive log files)
一、查看数据库是否为归档模式
二、打开或关闭归档模式
1、正常停库,然后启动数据库到 mount 状态
2、使用 alter database 命令打开归档模式
3、打开数据库,查看归档状态
三、配置归档的位置
1、查看归档进程数
2、配置归档的位置
四、配置归档日志文件的名称格式
五、删除/移动归档日志
1、手工删除归档日志文件
2、用 RMAN 删除数据库记录的归档列表信息
3、清除 v$archived_log 视图中的过期信息
配置归档日志文件的名称格式:
初始化参数 LOG_ARCHIVE_FORMAT 用于指定归档日志文件的名称格式。设置该初始化参数时,可以指定以下匹配符:
(1)%s:日志序列号;
(2)%S:日志序列号(带有前导 0);
(3)%t:线程编号;
(4)%T:线程编号(带有前导 0);
(5)%a:活动 ID 号;
(6)%d:数据库 ID 号;
(7)%r:RESETLOGS的ID值。
默认:%t_%s_%r
示例: ALTER SYSTEM SET LOG_ARCHIVE_FORMAT = 'thread_%T_seq_%S.%a.%r.%d' scope = spfile sid='*';
***************************************************************************************************************************************************************/
-- 1. 全备报错,磁盘空间不足;
[oracle@MS ~]$ rman target /
Recovery Manager: Release 19.0.0.0.0 - Production on Mon Jan 20 14:15:39 2025
Version 19.20.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
connected to target database: MS (DBID=*****)
RMAN>
RMAN> backup database plus archivelog;
Starting backup at 20-JAN-25
current log archived
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=2020 instance=MS device type=DISK
channel ORA_DISK_1: starting archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=2 sequence=513 RECID=576 STAMP=1190902749
channel ORA_DISK_1: starting piece 1 at 20-JAN-25
channel ORA_DISK_1: finished piece 1 at 20-JAN-25
piece handle=/u01/app/oracle/product/19.3.0/dbhome_1/dbs/0u3fneuu_30_1_1 tag=TAG20250120T141910 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 20-JAN-25
Starting backup at 20-JAN-25
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=+DATA/MS/DATAFILE/tbs_ms.295.1152060507
input datafile file number=00002 name=+DATA/MS/DATAFILE/sysaux.284.1152058917
input datafile file number=00003 name=+DATA/MS/DATAFILE/undotbs1.285.1152058919
input datafile file number=00001 name=+DATA/MS/DATAFILE/system.283.1152058917
input datafile file number=00004 name=+DATA/MS/DATAFILE/undotbs2.287.1152058923
channel ORA_DISK_1: starting piece 1 at 20-JAN-25
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE