欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ORA-01092 oracle instance terminated disconnection forced问题解决办法

程序员文章站 2022-05-02 23:35:30
ora-30012基本是由于参数文件中的undo_tablespace的值和控制文件中记录的值不一致导致的。可以使用alter system修改或者直接修改参数文件中有关undo_tablespac...

ora-30012基本是由于参数文件中的undo_tablespace的值和控制文件中记录的值不一致导致的。可以使用alter system修改或者直接修改参数文件中有关undo_tablespace的部分和控制文件中的一致即可。

ora-01092 oracle instance terminated disconnection forced

ora-30012: 撤消表空间 'undostb1' 不存在或类型不正确

查看了以下信息来确认undo表空间的问题

#sqlplus / nolog;

sql>connect / as sysdba;

sql>startup mount

sql>select name from v$datafile;

sql>show parameter undo;

sql>select name from v$tablespace;找到正确的表空间名称,做以下操作进行更改:

sql>create spfile from pfile;

sql>shutdown immediate;

sql>startup;

sql>show parameter undo;

sql>alter system set undo_management=auto scope=spfile;

修改表空间名称:sql>alter system set undo_tablespace='正确的表空间' scope=spfile;

重启验证:sql>shutdown immediate;sql>startup;

sql>create pfile from spfile;

sql>show parameter undo;

第二种方法:sql>startup mount;sql>select * from v$tablespace;sql>show parameter spfile;sql>select a.sid,a.value from v$spparameter a where a.name like '%undo_tablespace%'

可以看到undo表空间的名称和从控制文件中查到的名称不一致,下面修改spfile文件中有关undo表空间的部分,如下所示:sql>alter system set undo_tablespace='******' sid='*****';sql>select a.sid,a.value from v$spparameter a where a.name like '%undo_tablespace%'

查看和控制文件中的记录一致时,启动。