【Oracle】ORA-00257归档日志写满的解决方法
2015-07-01 08:17
701 查看
【问题】报错:ORA-00257。归档日志写满,删除归档日志。或者闪回日志写满,关闭闪回日志
【分析】
首先分析是闪回日志写满,但是查了数据库以后发现我并没可有开启闪回日志,那么就是归档日志文件写满的缘故了。使用以下几个命令可以看出当前归档日志文件的使用情况:
select
* from v$recovery_file_dest;
select
sum(percent_space_used)*3/100
from v$flash_recovery_area_usage;s
elect *
from v$flash_recovery_area_usage;
select
* from v$version;
【结论】进入rman程序删除归档日志
rman target ***/***@orcl;
crosscheck archivelog all;
delete archivelog until time
'sysdate';
--删除所有日志
或者 delete expired archivelog
all;--删除过期日志
建议 建立自动删除归档批处理
1、建立delArchiveLog.txt文件
connect target sys/**********
run{
DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-30'; //删除30天前的归档日志
crosscheck archivelog all;
delete expired archivelog all;
}
2、建立bat批处理文件,放在上以文件目录下
rman cmdfile=%~dp0delArchiveLog.txt
3、建立计划任务,你懂得
【分析】
首先分析是闪回日志写满,但是查了数据库以后发现我并没可有开启闪回日志,那么就是归档日志文件写满的缘故了。使用以下几个命令可以看出当前归档日志文件的使用情况:
select
* from v$recovery_file_dest;
select
sum(percent_space_used)*3/100
from v$flash_recovery_area_usage;s
elect *
from v$flash_recovery_area_usage;
select
* from v$version;
【结论】进入rman程序删除归档日志
rman target ***/***@orcl;
crosscheck archivelog all;
delete archivelog until time
'sysdate';
--删除所有日志
或者 delete expired archivelog
all;--删除过期日志
建议 建立自动删除归档批处理
1、建立delArchiveLog.txt文件
connect target sys/**********
run{
DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-30'; //删除30天前的归档日志
crosscheck archivelog all;
delete expired archivelog all;
}
2、建立bat批处理文件,放在上以文件目录下
rman cmdfile=%~dp0delArchiveLog.txt
3、建立计划任务,你懂得
相关文章推荐
- java通过jdbc方式连接oracle数据库
- Oracle学习笔记[1]----Oracle简介、安装与卸载
- [转]ERROR ORA-28002: the password will expire within 7 days 解决方法
- oracle导出dmp的时候使用owner
- 启动oracle11监听器错误
- Oracle表空间,用户,用户授权
- Oracle安装需要脚本orainstRoot.sh
- 如何在PL/SQL中修改ORACLE的字段顺序
- Oracle 11.2.0.2 安装条件检查之pdksh 包
- oracle 索引
- Oracle 修复脚本runfixup.sh
- Oracle Error Collect
- 【数据库】Oracle vs SQL Server
- 【Oracle错误集锦】:ORA-12154: TNS: 无法解析指定的连接标识符
- oracle 2
- 升级_宽视野Oracle图形升级(升级后dbca建库)—10.2.0.1.0提拔10.2.0.5.0
- Oracle CASE WHEN 用法介绍
- Oracle基本数据类型
- Oracle数据库备份与恢复
- Oracle DDL基本操作