【故障处理】ORA-30012的解决过程

【故障处理】ORA-30012的解决过程

 

1  BLOG文档结构图

 

2  前言部分

2.1  导读和注意事项

各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~:

① ORA-30012的解决过程

Tips:

① 本文在itpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和微信公众号(xiaomaimiaolhr)上有同步更新。

② 文章中用到的所有代码、相关软件、相关资料及本文的pdf版本都请前往小麦苗的云盘下载,小麦苗的云盘地址见:http://blog.itpub.net/26736162/viewspace-1624453/

③ 若网页文章代码格式有错乱,请下载pdf格式的文档来阅读。

④ 在本篇BLOG中,代码输出部分一般放在一行一列的表格中。其中,需要特别关注的地方我都用灰色背景和粉红色字体来表示,比如在下边的例子中,thread 1的最大归档日志号为33,thread 2的最大归档日志号为43是需要特别关注的地方;而命令一般使用黄色背景和红色字体标注;对代码或代码输出部分的注释一般采用蓝色字体表示。


  List of Archived Logs in backup set 11

  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time

  ---- ------- ---------- ------------------- ---------- ---------

  1    32      1621589    2015-05-29 11:09:52 1625242    2015-05-29 11:15:48

  1    33      1625242    2015-05-29 11:15:48 1625293    2015-05-29 11:15:58

  2    42      1613951    2015-05-29 10:41:18 1625245    2015-05-29 11:15:49

  2    43      1625245    2015-05-29 11:15:49 1625253    2015-05-29 11:15:53

[ZHLHRDB1:root]:/>lsvg -o

T_XLHRD_APP1_vg

rootvg

[ZHLHRDB1:root]:/>

00:27:22 SQL> alter tablespace idxtbs read write;

====》2097152*512/1024/1024/1024=1G

本文如有错误或不完善的地方请大家多多指正,ITPUB留言或QQ皆可,您的批评指正是我写作的最大动力。

2.2  本文简介

甲方在做灾备切换演练的时候,有一套数据库不能正常启动,基本的报错都是:ORA-30012: undo tablespace 'UNDOTBS1' does not exist or of wrong type 。下面记录一下其解决过程。

3  故障分析及解决过程

3.1  故障环境介绍


项目


source db


db 类型


RAC


db version


11.2.0.3.0


db 存储


ASM


OS版本及kernel版本


AIX 64位 7.1.0.0

3.2  故障发生现象及报错信息


[ZFLHRDB1:root]:/>crsctl stat res -t

--------------------------------------------------------------------------------

NAME           TARGET  STATE        SERVER                   STATE_DETAILS      

--------------------------------------------------------------------------------

Local Resources

--------------------------------------------------------------------------------

ora.DATA1.dg

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

ora.LISTENER.lsnr

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

ora.asm

               ONLINE  ONLINE       zflhrdb1                 Started            

               ONLINE  ONLINE       zflhrdb2                 Started            

ora.gsd

               OFFLINE OFFLINE      zflhrdb1                                    

               OFFLINE OFFLINE      zflhrdb2                                    

ora.net1.network

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

ora.ons

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

ora.registry.acfs

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

--------------------------------------------------------------------------------

Cluster Resources

--------------------------------------------------------------------------------

ora.LISTENER_SCAN1.lsnr

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.cvu

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.oc4j

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.oralhr.db

      1        ONLINE  OFFLINE                               Instance Shutdown  

      2        ONLINE  OFFLINE                               Instance Shutdown  

ora.scan1.vip

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.zflhrdb1.vip

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.zflhrdb2.vip

      1        ONLINE  ONLINE       zflhrdb2                                    

[ZFLHRDB1:root]:/>srvctl start db -d oralhr

PRCR-1079 : Failed to start resource ora.oralhr.db

CRS-5017: The resource action "ora.oralhr.db start" encountered the following error:

ORA-01092: ORACLE instance terminated. Disconnection forced

ORA-30012: undo tablespace 'UNDOTBS1' does not exist or of wrong type

Process ID: 12976284

Session ID: 1421 Serial number: 1

. For details refer to "(:CLSN00107:)" in "/oracle/app/11.2.0/grid/log/zflhrdb1/agent/crsd/oraagent_oracle/oraagent_oracle.log".

 

CRS-2674: Start of 'ora.oralhr.db' on 'zflhrdb1' failed

CRS-2632: There are no more servers to try to place resource 'ora.oralhr.db' on that would satisfy its placement policy

CRS-5017: The resource action "ora.oralhr.db start" encountered the following error:

ORA-01092: ORACLE instance terminated. Disconnection forced

ORA-30012: undo tablespace 'UNDOTBS2' does not exist or of wrong type

Process ID: 14614730

Session ID: 1421 Serial number: 1

. For details refer to "(:CLSN00107:)" in "/oracle/app/11.2.0/grid/log/zflhrdb2/agent/crsd/oraagent_oracle/oraagent_oracle.log".

 

CRS-2674: Start of 'ora.oralhr.db' on 'zflhrdb2' failed

 

3.3  故障分析及解决过程


[ZFLHRDB1:root]:/>oerr ora 30012

30012, 00000, "undo tablespace '%s' does not exist or of wrong type"

// *Cause:   the specified undo tablespace does not exist or of the

//           wrong type.

// *Action:  Correct the tablespace name and reissue the statement.

[ZFLHRDB1:root]:/>su - oracle

[ZFLHRDB1:oracle]:/oracle>sqlplus / as sysdba

 

SQL*Plus: Release 11.2.0.3.0 Production on Sun Nov 6 23:46:05 2016

 

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

 

Connected to an idle instance.

 

SYS@oraLHR1> startup mount

ORACLE instance started.

 

Total System Global Area 3206836224 bytes

Fixed Size                  2225776 bytes

Variable Size            1409288592 bytes

Database Buffers         1778384896 bytes

Redo Buffers               16936960 bytes

Database mounted.

SYS@oraLHR1> select * from v$tablespace;

 

       TS# NAME                           INC BIG FLA ENC

---------- ------------------------------ --- --- --- ---

         0 SYSTEM                         YES NO  YES

         1 SYSAUX                         YES NO  YES

         3 TEMP                           NO  NO  YES

         5 USERS                          YES NO  YES

         6 ILHRDATA                       YES NO  YES

         7 ILHRIND                        YES NO  YES

         8 ILHRLOG                        YES NO  YES

         9 UNDO1                          YES NO  YES

        10 UNDO2                          YES NO  YES

 

9 rows selected.

SYS@oraLHR1> show parameter spfile

 

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

spfile                               string      +DATA1/oralhr/spfileoralhr.ora

SYS@oraLHR1> SELECT a.SID, a.VALUE FROM v$spparameter a WHERE a.NAME LIKE '%undo_tablespace%' ;

 

SID                  VALUE     

-------------------- -----------

oraLHR2              UNDOTBS2

oraLHR1              UNDOTBS1

*                    UNDO2

可以看到UNDO表空间的名称和从控制文件中查到的名称不一致,下面修改SPFILE文件中有关UNDO表空间的部分,如下所示:


SYS@oraLHR1> ALTER SYSTEM SET undo_tablespace='UNDO1' SID='oraLHR1';

 

System altered.

 

SYS@oraLHR1> ALTER SYSTEM SET undo_tablespace='UNDO2' SID='oraLHR2';

 

System altered.

 

SYS@oraLHR1> SELECT a.SID, a.VALUE FROM v$spparameter a WHERE a.NAME LIKE '%undo_tablespace%';

 

SID             VALUE

--------------- ------

oraLHR1         UNDO1

oraLHR2         UNDO2

 

  <<<<<<<<<-------   已经和控制文件中记录的一致了,下面启动数据库

SYS@oraLHR1> exit

Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing options

[ZFLHRDB1:oracle]:/oracle>srvctl stop db -d oralhr -o abort

[ZFLHRDB1:oracle]:/oracle>srvctl start db -d oralhr

[ZFLHRDB1:oracle]:/oracle>crsctl stat res -t

--------------------------------------------------------------------------------

NAME           TARGET  STATE        SERVER                   STATE_DETAILS      

--------------------------------------------------------------------------------

Local Resources

--------------------------------------------------------------------------------

ora.DATA1.dg

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

ora.LISTENER.lsnr

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

ora.asm

               ONLINE  ONLINE       zflhrdb1                 Started            

               ONLINE  ONLINE       zflhrdb2                 Started            

ora.gsd

               OFFLINE OFFLINE      zflhrdb1                                    

               OFFLINE OFFLINE      zflhrdb2                                    

ora.net1.network

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

ora.ons

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

ora.registry.acfs

               ONLINE  ONLINE       zflhrdb1                                    

               ONLINE  ONLINE       zflhrdb2                                    

--------------------------------------------------------------------------------

Cluster Resources

--------------------------------------------------------------------------------

ora.LISTENER_SCAN1.lsnr

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.cvu

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.oc4j

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.oralhr.db

      1        ONLINE  ONLINE       zflhrdb1                 Open               

      2        ONLINE  ONLINE       zflhrdb2                 Open               

ora.scan1.vip

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.zflhrdb1.vip

      1        ONLINE  ONLINE       zflhrdb1                                    

ora.zflhrdb2.vip

      1        ONLINE  ONLINE       zflhrdb2                                    

[ZFLHRDB1:oracle]:/oracle>srvctl status db -d oralhr

Instance oraLHR1 is running on node zflhrdb1

Instance oraLHR2 is running on node zflhrdb2

4  故障处理总结

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

关于为何会出现参数文件和控制文件中undo_tablespace的值不一致的情况,这个可以从告警日志中去查询,这里就不深究了,毕竟是个测试库,也许很多年都没人使用了吧。

About Me


...............................................................................................................................

● 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用

● 本文在itpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和个人微信公众号(xiaomaimiaolhr)上有同步更新

● 本文itpub地址:http://blog.itpub.net/26736162/viewspace-2127949/

● 本文博客园地址:http://www.cnblogs.com/lhrbest/p/6040312.html

● 本文pdf版及小麦苗云盘地址:http://blog.itpub.net/26736162/viewspace-1624453/

● QQ群:230161599     微信群:私聊

● 联系我请加QQ好友(642808185),注明添加缘由

● 于 2016-11-06 23:00 ~ 2016-11-07 12:00 在中行完成

● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

● 版权所有,欢迎分享本文,转载请保留出处

...............................................................................................................................

手机长按下图识别二维码或微信客户端扫描下边的二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,免费学习最实用的数据库技术。

时间: 2024-09-27 15:23:05

【故障处理】ORA-30012的解决过程的相关文章

掉电引起的ORA-1172错误解决过程(二)

由于UPS故障,导致机房连续多次掉电,问题解决后,发现一台本地测试数据库打开时报错,ORA-1172.ORA-1151错误. 掉电引起的ORA-1172错误解决过程(一):http://yangtingkun.itpub.net/post/468/465223 尝试打开数据库.     上一篇介绍了问题的产生和现象,下面尝试用EVENTS方式打开数据库,不过由于出现ORA-600 2662错误的机制与上面一篇文章不同,因此这里不需要设置隐含参数_allow_resetlogs_corruptio

掉电引起的ORA-1172错误解决过程(三)

由于UPS故障,导致机房连续多次掉电,问题解决后,发现一台本地测试数据库打开时报错,ORA-1172.ORA-1151错误. 掉电引起的ORA-1172错误解决过程(一):http://yangtingkun.itpub.net/post/468/465223 掉电引起的ORA-1172错误解决过程(二):http://yangtingkun.itpub.net/post/468/465868 打开数据库后的处理:     在前一篇文章中已经成功打开数据库,其实这时从目标上已经基本完成了,只需通

快照抓取异常,只有网址无标题描述解决过程

说到百度快照,站长们们都知道他的重要性,是百度权重的重要因素之一,也是交换友情链接,衡量网站的重要标准.及时快照更新直接表示站点被蜘蛛抓取的频率,受蜘蛛的喜欢程度.闲话不说,今天就给大家分享我的站点首页快照抓取异常,只有网址无标题描述的,快照停止的解决过程. 话说我的站点中国纺织人才网向来快照更新都是比较及时的,偶尔会落后几天,但是恢复的也很快,但是前段时间,输入主关键词时候,出来的快照是9月12号的,还没有描述,只有一个网址以及名称,奇怪,这什么情况?连一直以来都有的ICO标签也么有了,这美观

Oracle数据库的ORA-00257故障解决过程

概述: Oracle数据库是目前业界最常用的大型数据库系统,我在实际项目中遇到出现ORA-00257错误(空间不足错误),通过查找资料,绝大部分说这是由于归档日志太多,占用了全部的硬盘剩余空间导致的,通过简单删除日志或加大存储空间就能够解决.但是我在Oracle 10g上发现,存储空间还有很大,却也报这个错误.原来是Oracle 10g中新的特性,对Flash Recovery的管理导致的. 1.软硬件环境 服务器HP Proliant DL580G4(Intel Xeon 3.16GHz/4G

ORA-00600 [2662]错误解决过程

错误|过程|解决 ORA-00600 [2662]错误解决过程 数据库版本:7.3.2   背景: 客户那边数据库突然出现一个current日志文件坏了,导致数据库crash了,然后现场工程师使用_ALLOW_RESETLOGS_CORRUPTION = TRUE这个隐含参数,做了不完全恢复后强行将数据库打开.可是打开数据库后发现只能用internal用户连接进去,别的用户连接都报错,错误信息如下: ORA-00600: internal error code, arguments: [2662

HBase一次慢查询请求的问题排查与解决过程

最近HBase集群遇到过一次慢查询请求的问题,下面是对这一问题的具体描述及排查解决过程. 1. 发现问题 项目中有一张HBase表,每天凌晨以后会集中批量导入一批数据,导入数据量很大,在千万到亿的量级,然后白天为用户提供查询服务.某天突然发现,该表按照各个region(共计256个)分别仅scan少数几条数据时,部分region的查询请求的响应时间很慢,长达10秒甚至几十秒不等. 2. 排查问题 首先,通过查看HBase自带的region server监控界面上,看到这张表的每个region下面

路由故障中下游设备学习不到路由器上的组播路由的解决过程

路由故障中,下游设备学习不到路由器上的组播路由的解决过程如下: 网络环境 组播数据通过二层转发到RouterA,RouterA上用VLANIF口终结该组播源的VLAN信息,所有的三层接口(包括物理的和逻辑的)都 启用了组播协议IGMP和PIM SM,设备RouterB的IGP路由可达,但是下挂设备RouterB学习不到RouterA的组播路由,导致组播业务不能正常运行. 图为组播业务组网图 故障分析 1.在RouterB上使用命令ping,能正常Ping通组播源地址,IGP路由可达,说明正常的I

Oracle数据库如何搜集指定SQL的执行计划和解决过程中的ORA-00904错误

  Oracle 数据库如何搜集指定SQL的执行计划和解决过程中的ORA-00904错误 (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处;否则请与本人联系,违者必究) 如何收集指定SQL的执行计划对开发人员来说非常重要的,这里记录下基础的收集方式,以便查阅和其他人参考. 1. 链接到sqlplus,如下图 2. 执行下面两个的命令之一 set autotrace on; (说明:打开自动分析统计,并显示SQL语句的运行结果) 3. 输入并执行要搜集执行计划的SQL语句

.NET平台开源项目速览(7)关于NoSQL数据库LiteDB的分页查询解决过程

原文:.NET平台开源项目速览(7)关于NoSQL数据库LiteDB的分页查询解决过程 在文章:这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧!(第二辑) 与 .NET平台开源项目速览(3)小巧轻量级NoSQL文件数据库LiteDB中,介绍了LiteDB的基本使用情况以及部分技术细节,我还没有在实际系统中大量使用,但文章发布后,有不少网友( loogn)反应在实际项目中使用过,效果还可以吧.同时也有人碰到了关于LiteDB关于分页的问题,还不止一个网友,很显然这个问题从我的思考上来