ORA-00257: Archiver error. Connect AS SYSDBA only until resolved错误解决

错误的原因:是因为服务器分配空间不足,数据库归档日志满导致系统数据库登陆失败。

解决办法:1.删除以前的日志

2.增大归档日志的容量

3.关闭归档模式

一、删除以前的容量

1.登录账号后,查看ORACLE_BASE目录

【oracle@localhost~】$echo $ ORACLE_BASE;

/orc/app/oracle

2.进入数据库操作界面

【oracle@localhost~】

s

q

l

p

l

u

s

/

a

s

s

y

s

d

b

a

3.

查看

f

l

a

s

h

r

e

c

o

v

e

r

y

a

r

e

a

的使用情况

S

Q

L

>

s

e

l

e

c

t

f

r

o

m

V

sqlplus /as sysdba 3.查看flash recovery area的使用情况 SQL> select * from V

sqlplus/assysdba3.查看flashrecoveryarea的使用情况SQL>select∗fromVFLASH_RECOVERY_AREA_USAGE;

FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLENUMBER_OF_FILES

在这里插入图片描述在这里插入图片描述5、退出数据库命令后,进入/orc/app/oracle/fast_recovery_area/orcl/ORCL/archivelog文件夹下保留最近日期的一个文件夹,删除其他的文件夹。

6、使用rman维护控制文件,否则空间显示仍不释放。

[oracle@localhost ~]$ rman target sys/pass

恢复管理器: Release 12.2.0.1.0 – Production on 星期四 9月 3 17:55:59 2020

Copyright © 1982, 2017, Oracle and/or its affiliates. All rights reserved.

已连接到目标数据库: ORCL (DBID=1576223308)


Rman target sys/oracle@db 其中sys是用户名,密码是oracle,@后面数据库实例

7、检查错误文档

RMAN> crosscheck archivelog all;

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

8、删除过期文档

RMAN> delete expired archivelog all;

delete expired删除的是那些本来RMAN以为存在但是实际上在磁盘或者磁带上已经被删除了的信息,删除的只是RMAN资料库中的记录

9、删除截止到前一天所有的archivelog

RMAN> delete archivelog until time ‘sysdate-1’;

删除截止到前一天的所有archivelog

10、退出

RMAN> exit();

在这里插入图片描述

在这里插入图片描述

三、修改为无归档日志模式

开启归档日志模式

1、登录服务端:sqlplus / as sysdba;

2、查询归档模是否开启:archive log list;

3、关闭数据库:shutdown immediate;

4、开启数据库至mount状态:startup mount;

5、修改数据库模式:alter database archivelog;

6、开启数据库:alter database open;

7、查看归档日志是否开启:archive log list;

关闭归档日志模式

1、登录服务端:sqlplus / as sysdba;

2、关闭数据库:shutdown immediate;

3、打开数据库:startup mount;

4、关闭归档日志:alter database noarchivelog;

5、开启数据库:alter database open;

6、查看归档日志是否关闭:archive log list ;

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/52333fe655.html