oracle断电重启之ORA-00600[4194]

1.问题描述

Oracle服务器断电重启以后无法数据库无法正常连接,使用sqlplus envision/envision连接报错。常见的错误有以下这些:

  1. ORA-12518: TNS:listener could not hand off client connection
  2. ORA-12560: TNS:protocol adapter error
  3. ORA-01034: ORACLE not available
  4. ORA-27101: shared memory realm does not exist
  5. ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
  6. ORA-00600:[4194]

oracle断电重启之ORA-00600[4194]

2.基本处理

上述这些ORA报错,基本可以归类为一下几种:

  1. 环境变量ORACLE_SID是否为prjdb,如果不是就设置环境变量
  2. TNSListener服务是否启动,如果没有启动就重新启动一下。
  3. prjdb这个oracle服务是否启动,如果没有启动就启动一下
  4. 使用dba身份能否连接oralce。

3.查看日志确认问题

将上面的这些问题都过一遍,并且都操作一遍以后发现问题还是没有解决,此时我们可以查看oracle 的alert log。我的alert log的路径为:

oracle断电重启之ORA-00600[4194]
D:\app\oracle\diag\rdbms\prjdb\prjdb\trace\alert_prjdb.txt
oracle断电重启之ORA-00600[4194]

打开alert log文件,找到日志的最后一行,发现行号是1003417,如下图所示:

oracle断电重启之ORA-00600[4194]

接着尝试重启oracle服务,

oracle断电重启之ORA-00600[4194]

重启完毕以后再次查看log文件,看看日志有什么错误。当我们找到ora-00600[4194]的时候,就定位到undo表空间文件损坏这个问题。最后解决方法就是重建undo表空间。

4.问题处理步骤:重建undo表空间

4.1思路:

在INITprjdb.ora这个配置文件中将undo表空间指向系统表空间system,然后删除undo表空间,最后在创建undo表空间,最后再在INITprjdb.ora这个配置文件中将undo表空间指向刚刚创建的undo表空间。

4.2查看表空间

oracle断电重启之ORA-00600[4194]
select * from v$tablespace;
oracle断电重启之ORA-00600[4194]

 oracle断电重启之ORA-00600[4194]

4.3查看undo表空间

oracle断电重启之ORA-00600[4194]
show parameter undo
oracle断电重启之ORA-00600[4194]

4.4管理员身份登陆:

oracle断电重启之ORA-00600[4194]
sqlplus / as sysdba
oracle断电重启之ORA-00600[4194]

4.5创建pfile

oracle断电重启之ORA-00600[4194]
create pfile from spfile;
oracle断电重启之ORA-00600[4194]

关闭实例

oracle断电重启之ORA-00600[4194]
shutdown immediate
oracle断电重启之ORA-00600[4194]

修改INITprjdb.ora参数

oracle断电重启之ORA-00600[4194]
undo_management= MANUAL
undo_tablespace= SYSTEM
oracle断电重启之ORA-00600[4194]

这个可以参考:http://www.xifenfei.com/2111.html

启动数据库

在修改INITprjdb.ora以后,以INITprjdb.ora这个参数文件中的配置启动oracle实例

oracle断电重启之ORA-00600[4194]
$SQL> startup pfile=D:\app\oracle\product\11.2.0\dbhome_1\database\INITprjdb.ora

ORACLE instance started.
Total System Global Area  857903104 bytes
Fixed Size                  1377952 bytes
Variable Size             503318880 bytes
Database Buffers          348127232 bytes
Redo Buffers                5079040 bytes
Database mounted.
Database opened.
oracle断电重启之ORA-00600[4194]

删除undo表空间

因为重新指定了undo表空间,所以我们可以将undotbs1这个表空间删除

oracle断电重启之ORA-00600[4194]
SQL> drop tablespace undotbs1 including CONTENTS;
oracle断电重启之ORA-00600[4194]

重建表空间

oracle断电重启之ORA-00600[4194]
CREATE SMALLFILE UNDO TABLESPACE UNDOTBS1 DATAFILE D:\app\oracle\oradata\prjdb\UNDOTBS01.DBF SIZE 200M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE 8G;
oracle断电重启之ORA-00600[4194]

重新创建pfile

oracle断电重启之ORA-00600[4194]
create pfile from spfile;
oracle断电重启之ORA-00600[4194]

重启oracle数据库

 

oracle断电重启之ORA-00600[4194],布布扣,bubuko.com

oracle断电重启之ORA-00600[4194]

上一篇:第5章(part_02)用户身份与权限&第6章(part_01)存储结构和磁盘划分


下一篇:ACL控制访问列表