十五、oracle启动后,服务又自动停止

king's blog

问题描述

启动监听后,再启动oracle服务(sqlplus / as sysdba->start),过一会oracle服务自动停止(可通过lsnrctl status看到)

原因分析

查看日志文件: /opt/oracle/diag/rdbms/reapsdb/REAPSDB/trace/alert_REAPSDB.log,显示如下内容:
ORA-00607: Internal error occurred while making a change to a data block
ORA-00600: internal error code, arguments: [kddummy_blkchk], [8], [565129], [18021], [], [], [], [ ]

解决办法

详细步骤如下:

步骤一、登录并修改undo的表空间管理方式(默认是auto,修改为manual)

SQL->sqlplus / nolog
SQL->sqlplus / as sysdba

#查看undo的表空间管理方式
SQL->show parameter undo;

#修改undo的表空间管理方式为manual
SQL->alter system set undo_management=manual scope=spfile;
SQL->shudown immediate;
SQL->startup;

步骤二、创建undo临时表空间

SQL->create undo tablespace undo2 datafile ‘/opt/oracle/oradata/REAPSDB/undo.dbf’ size 200M;

步骤三、修改undo的表空间为undo2

SQL->alter system set undo_tablespace=undo2 scope=spfile;

步骤四、修改undo表空间管理模式为auto

SQL->alter system set undo_management=auto scope=spfile;
SQL->shutdown immediate;
SQL->startup;

步骤五、将undo表空间改回undotbs1

SQL->drop tablespace undotbs1 including contents and datafiles;
SQL->create undo tablespace undotbs1 datafile ‘/opt/oracle/oradata/REAPSDB/undotbs01.dbf’ size 500M;
SQL->alter system set undo_management=manual scope=spfile;
SQL->shutdown immediate;
SQL->startup;
SQL->alter system set undo_tablespace=undotbs1 scope=spfile;
SQL->alter system set undo_management=auto scope=spfile;
SQL->shutdown immediate;
SQL->startup;

#删除刚刚临时建立的undo2表空间
SQL->drop tablespace undo2 including contents and datafiles;

Tags:
文 / 甲乙丙丁
LEAVE A REPLY

loading