oracle 关闭之后启动报错ora-00205,怎么解决?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 关闭之后启动报错ora-00205,怎么解决?相关的知识,希望对你有一定的参考价值。

shutdown 时报错ora-01507
startup 时报错ora-00205,
怎么解决?

oracle 关闭之后启动报错ora-00205是设置错误造成的,解决方法为:

1、工作中遇到在启动数据库实例的时候报错ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance。

2、先用静态参数文件pfile启动数据库,发现使用静态参数文件启动时没有报错。

3、利用静态参数文件重建动态参数文件spfile并重启数据库,发现问题已经解决,不再有失效参数错误。

4、查看警报日志 alert_bianxueqing.log  下面是警报的位置。

5、打开文件把文件中的log_archive_start      把这一行直接删除  然后再重启动就可以了。

参考技术A ORA-00205: error in identifying control file, check alert log for more info
翻译为:控制文件的错误,请检查警报日志中获得更多信息

通过:/opt/Oracle/diag/rdbms/ora11g/ora11g/alert/log.xml文件中找出实例启动日志
里面会有如下信息:
<msg time='2011-11-10T09:55:51.643+08:00' org_id='oracle' comp_id='rdbms'
client_id='' type='UNKNOWN' level='16'
module='MMON_SLAVE' pid='13970'>
<txt>Errors in file /opt/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_m000_13970.trc:
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/opt/oracle/oradata/ora11g/control03.ctl'
ORA-27048: skgfifi: file header information is invalid
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/opt/oracle/oradata/ora11g/control02.ctl'
ORA-27048: skgfifi: file header information is invalid
</txt>
</msg>
里面有提示control02.ctl与control03.ctl两个控制文件错误
再找到/opt/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_m000_13970.trc跟踪文件
里面有如下信息:
kcidr_process_controlfile_error:
IO Check was called but no error was found
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/opt/oracle/oradata/ora11g/control03.ctl'
ORA-27048: skgfifi: file header information is invalid
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/opt/oracle/oradata/ora11g/control02.ctl'
ORA-27048: skgfifi: file header information is invalid
里面提示无法正常打开两个控制文件。

针对如上信息,可能是由于数据库的非正常关闭而导致控制文件被损坏。
可选择如下两种修改方式:
1、直接拷贝control01.ctl文件进行覆盖control02.ctl与control03.ctl文件
2、从其它正常的oracle环境中拷贝控制文件进行覆盖。

实例装载之后可通过“show parameter spfile;”查询出oracle加载的参数文件,我这里是spfileora11g.ora。
实例正常启动后,可通过“select * from v$controlfile;”查询这个视图,这里面的控制文件均与spfileora11g.ora中配置的控制文件内容一致。
参考技术B 有个类似的问题,自己查查,可能是磁盘的问题  
启动系统时会自启动数据库alert.log文件,看看具体是什么问题
alert.log 在 ORACLE_BASE/admin/orcl/bdump/alert_orcl.log
(注意,ORACLE_SID是ORCL,应根据实际的ORACLE_SID进行修改)
查看文件末尾的错误追问

没有alert_orcl.log文件

追答

orcl 是ORACLE缺省的实例名,没有alert_orcl.log文件,你的实例名肯定不是orcl,找到alert_xxx.log文件即可,xxx是你的oracle实例名

追问

我的是用默认的orcl

追答

你是哪个版本,看看有没有其他的日志文件,可能名称不同。
新版本日志可能是xml文件的,但可能在alert目录下,如启动日志为log.xml
ORA-00205: error in identifying control file, check alert log for more info

一般错误是控制文件错误,必须查清log看具体是什么错误

参考技术C CONTROL01.CTL和CONTROL02.CTL两个控制文件不一致或丢失其中一个导致。
解决方案:
1.不一致的话,先备份两个文件,然后复制其中一个,改名后替换另外一个
2.丢失其中一个的话,直接复制改名就行了
3.两个都丢失...麻烦了点,得看具体问题

oracle--安装报错

出现ORA-01034和ORA-27101的原因是多方面的:主要是oracle当前的服务不可用,shared memory realm does not exist,是因为oracle没有启动或没有正常启动,共享内存并没有分配给当前实例.所以,通过设置实例名,再用操作系统身份验证的方式,启动数据库。这样数据库就正常启动了,就不会报ORA-01034和ORA-27101两个启动异常了。

在cmd命令窗口中依次直接输入下面命令

sqlplus sys/admin as sysdba

startup mount

recover database until time ‘2019-01-14 09:00:00‘

alter database open resetlogs;

shutdown

startup 
 
 

以上是关于oracle 关闭之后启动报错ora-00205,怎么解决?的主要内容,如果未能解决你的问题,请参考以下文章

我的ORACLE服务已经启动了,没报错,但是plsql却怎么也连不进,昨天还好好地

Linux上Oracle 11g启动与关闭

Oracle报错

Linux下oracle数据库启动和关闭操作

ORACLE启动报错ORA-03113: end-of-file on communication channel

oracle 11g 监听启动成功后立马自动关闭