ORACLE如何删除归档日志文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORACLE如何删除归档日志文件?相关的知识,希望对你有一定的参考价值。

参考技术A

可以尝试这种方法:

1. 进入rman 

2. connect target / 

3. crosscheck archivelog all; 

4. delete expired archivelog all; 

这时候我们再去OEM中看就一定看不到,如果你的从来没有做过这个动作的话,我们可以比较从这个动作前的controlfile后动作后的controlfile的大小!

ORACLE正确删除归档并回收空间的方法

ORACLE正确删除归档并回收空间的方法 

一个ORACLE归档日志经常满,表现为/oraarchive 这个文件空间占用100%大家一定抱怨ORACLE为何没有归档维护工具,很多人直接删除了事,错了,ORACLE有,而且很智能,可以正确的删除归档和FLASHBACK,不过切记,ORACLE归档日志对于ORACLE的数据恢复和备份非常重要,不到万不得已不要删除归档日志。 

删除归档日志的过程 

以ORACLE用户身份登录到数据库服务器主机或通过网络连接 

进入ORACLE数据备份工具 

rman target/ 

或rman target/@orcl 

在命令窗口里面执行 

DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7'; 

Oracle归档日志

参考技术A 显示归档日志信息

1,使用ARCHIVE LOG LIST命令可以显示日志操作模式,归档位置,自动归档机器要归档的日志序列号等信息.

2显示日志操作模式

SELECT name,log_mode FROM v$database;

3,显示Oracle归归档日志信息.

Col name format a46

Select name, swquence#, first_change# FROM v$archived_log;

Name用于表示Oracle归归档日志文件名,sequence#用于表示归档日志对应的日志序列号,firs_change#用于标识归档日志的起始SCN值.

4、执行介质 恢复 时,需要使用归档日志文件,此四必须准确定位归档日志的存放位置.通过查询动态性能视图v$archive_dest可以取得归档日志所在目录.

SELECT destination FROM v$archive dest;

5,显示日志历史信息

SELECT * FROM v$loghist;

THREAD#用于标识重做线程号,SEQUNCE#用于标识日志序列号,FIRST_CHANGE#用于标识日志序列号对应的起始SCN值,FIRST_TIME用于标识起始SCN的发生时间.SWICTH_CHANGE#用于标识日志切换的SCN值.

6.显示归档进程信息.

进行日志切换时,ARCH进程会自动将重做日志内容复制到Oracle归归档日志中,为了加快归档速度,应该启用多个ARCH进程.通过查询动态性能视图V$ARCHIVE_PROCESSES可以显示所有归档进程的信息!

SELECT * FROM v$archive_processes;

Porcess用于标识ARCH进程的编号,status用于标识ARCH进程的状态(ACTIVE:活动,STOPPED:未启动),log_sequence用于标识正在进行归档的日志序列号,state用于标识ARCH进程的工作状态

以上是关于ORACLE如何删除归档日志文件?的主要内容,如果未能解决你的问题,请参考以下文章

如何正确删除Oracle 归档日志文件

如何删除oracle的归档日志

Oracle定时删除归档日志文件

oracle 如何关闭打开归档日志的方法

如何清除oracle中的执行sql记录在日志里面的的记录

oracle的归档日志如何分天存放