Docs/数据库/oracle/归档日志处理.md

2.6 KiB
Raw Blame History

查看归档日志使用情况

sqlplus / as sysdba
select * from v$recovery_file_dest;
select * from V$FLASH_RECOVERY_AREA_USAGE;

查询日志目录位置

show parameter recover;

计算fast_recovery_area已经占用的空间

select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;

修改fast_recovery_aread的空间

ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=8g;

rman清理日志

rman target /

删除过期归档日志

crosscheck archivelog all;
delete expired archivelog all;

删除昨天以前的归档日志

delete noprompt archivelog until time  'sysdate-1';

其他

显示rman配置

show all;

报告目标数据库的物理结构

report schema;

报告陈旧备份

report obsolete;

报告不可恢复的数据文件

report unrecoverable;

列出备份信息

list backup;
list backup summary;
list backup of database;
list backup of tablespace table_name;
list backup of controlfile;
list backup of spfile;
list backupset id;

校验备份

crosscheck backup;
crosscheck backup of database;
crosscheck backup of tablespace system;
crosscheck backup of controlfile;
crosscheck backup of spfile;
crosscheck backup of archivelog all;

校验没有备份过的归档日志

crosscheck archivelog all;
delete noprompt expired archivelog all;

刪除所有的Archivelog files

delete archivelog all; 

強制刪除昨天以前的archivelog files

delete force archivelog until time 'sysdate -1';
delete noprompt  force archivelog until time 'sysdate -2';

刪除所有过期的Archivelog files

delete expired archivelog all;

删除陈旧备份

delete obsolete;
delete noprompt obsolete;

删除所有expired的备份包括归档日志、控制文件、备份聚

delete expired backup;

删除所有备份

delete backup;

删除指定tag备份

delete backup tag xxx;

改为长期备份

change backupset id unavailable;
change backupset id keep forever logs;
change backupset id keep until time 'sysdate+30' logs;
change backupset id nokeep;

改为基于时间的备份

configure retention policy to recovery window of 30 days;

改为基于冗余数量的备份

configure retention policy to redundancy  n ;

取消备份保留策略

configure retention policy to none;

设置归档日志存放在其它位置

set archivelog destination to 'e: emp';