ORA-00257

问题描述

登陆oracle,提示错误信息ORA-00257: Archiver error. Connect AS SYSDBA only until resolved.

原因分析

这是归档日志积存过多,占用了磁盘空间导致的问题。

解决方案

通过删除归档日志或者增加存储空间方式可解决该问题,本文中选择通过rman清除归档日志

root@18b9d420d2d4# rman target sys/xxxx  #使用有dba权限的账户和密码

#检查控制文件和实际物理文件的差别

RMAN> crosscheck archivelog all;

#删除过期文件(过期文件指的是存储在rman资料库中的记录,但实际上记录对应的归档日志已经被清除了)

RMAN> delete expired archivelog all;

#删除7天前的归档日志

RMAN> delete archivelog until time 'sysdate-7'

注:请勿手动删除归档日志,手动删除,空间是不会得到释放的。
————————————————
版权声明:本文为CSDN博主「不会画画的画师」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Loiterer_Y/article/details/119945385

ORA-03113

问题描述

登录oracle执行sql语句报错

ORA-03113: end-of-file on communication channel

startup
ORACLE instance started.

Total System Global Area 1.0066E+10 bytes
Fixed Size           12342064 bytes
Variable Size         2248150224 bytes
Database Buffers     7784628224 bytes
Redo Buffers           21209088 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 12631
Session ID: 977 Serial number: 51747

原因分析

以上错误是因为,没有一致性关库造成的

–使用隐藏参数忽略一致性验证:

conn / as sysdba
startup mount
alter system set "_allow_resetlogs_corruption"=true scope=spfile;
startup force mount;        --将数据库启动到 mount
alter database open resetlogs;    --使用 resetlogs 打开数据库
--此时再报 ORA-01139 错误
alter database open resetlogs
*
ERROR at line 1:
ORA-01139: RESETLOGS option only valid after an incomplete database recovery

解决方案

recover database until cancel;
Media recovery complete.

alter database open resetlogs;

Database altered.

SQL> select status from v$instance;

STATUS
------------
OPEN

取消隐藏参数后,可以正常启动数据库:

alter system reset "_allow_resetlogs_corruption" scope=spfile sid='*';

然后重新启动,可以正常启动

startup force

ORA-00257

1、在shell命令下切换到sqlplus命令

sqlplus / as sysdba;

2、查看归档日志占比

select * from v$flash_recovery_area_usage;

在这里插入图片描述
查看归档日志大小

select * from v$recovery_file_dest;

注意:这里的单位为字节(B)。
在这里插入图片描述
其他输出略。

3、对于此问题解决很简单:一是增加空间大小,二是删除归档日志。
1)增加空间大小:

alter system set db_recovery_file_dest_size=50G scope=both;

修改完成后查看是否修改成功

show parameter db_recover;

在这里插入图片描述

查看修改后空间大小

select * from v$recovery_file_dest;

注意:这里的单位为字节(B)。
在这里插入图片描述

2)删除归档日志
在dos窗口切换rman命令:$ rman target /
切换到rman命令后检查归档日志是否失效:crosscheck archivelog all;
删除失效归档日志,即删除物理文件已丢失但记录在rman中的归档日志:

delete expired archivelog all;

删除所有归档日志(慎用):

delete archivelog all;
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐