【故障处理】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好友(642808185),注明添加缘由 -06 23:00 ~ 2016-11-07 12:00 在中行完成 ● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解 ● 版权所有,欢迎分享本文,转载请保留出处 ............................................................................................................................... 手机长按下图识别二维码或微信客户端扫描下边的二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,免费学习最实用的数据库技术。
|
【故障处理】ORA-30012的解决过程的更多相关文章
- 转载:oracle11G 已开启监听,但远程连接依旧无监听解决过程
1.连接数据库显示无监听程序,首先查看服务器的oracle监听服务是否开启,服务名称:OracleOraDb11g_home1TNSListener(具体环境中可能不完全一样,但是认准TNSListe ...
- oracle11G 已开启监听,但远程连接依旧无监听解决过程
1.连接数据库显示无监听程序,首先查看服务器的oracle监听服务是否开启,服务名称:OracleOraDb11g_home1TNSListener(具体环境中可能不完全一样,但是认准TNSListe ...
- .NET平台开源项目速览(7)关于NoSQL数据库LiteDB的分页查询解决过程
在文章:这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧!(第二辑) 与 .NET平台开源项目速览(3)小巧轻量级NoSQL文件数据库LiteDB中,介绍了LiteDB的基本使用情况以及部 ...
- 启动Tomcat一闪而过——分析及解决过程
启动Tomcat一闪而过--分析及解决过程 嗯,昨天将有关JDK的知识稍微整理了一下,现在稍微整理一下有关Tomcat的! 1:Tomcat是什么? Tomcat是当今世界上使用最为广泛的.开源免费的 ...
- 这几天帮一个朋友解决了一点小问题(RF的有些小问题及解决过程)
最近涉猎自动化太少了,以至于都不经常更新了.最近一个朋友在做移动端自动化的时候遇到了一些小问题来找我解决.本人也不是很精通,只是接触的时间长了一点了.下面就是一些问题和解决过程: 1.她刚过来的时候, ...
- nginx负载下站点错误响应会导致其他节点重复响应问题的解决过程
目录 前言 问题来了 问题又来了 问题分析 困惑 转机 后续 前言: 这是我上周工作过程中的一次解决问题的过程.解决的是nginx负载下站点错误响应导致其他节点重复响应. 我在整理这个记叙文时,在给这 ...
- 再记一次w3wp占用CPU过高的解决过程(Dictionary和线程安全)
在此之前项目有发生过两次类似的状况,都得以解决,但最近又会发现偶尔CPU会跑满,虽然之前使用过WinDbg解决过两次问题但人的记忆是不可靠的,今天处理同样问题的时候还是遇到了一些障碍,这一次希望可以记 ...
- 记录linux /bin被误删除的解决过程
1.事因: 执行shell测试时,shell中rm -rf $path/* 变量$path为空,结果执行的命令是rm -rf / 事发时及时ctrl+c中断,导致只有/bin /boot目录删除 2. ...
- 记VS2013并行编译导致出错的解决过程
接前一篇,电脑换了新的,系统是64bit的win8系统,先安装了SQLServer2012,再安装VS2010旗舰版,Stop!为什么还是2010?因为2010太经典了,以至于公司的项目还在用它写项目 ...
随机推荐
- webapp开发之需要知道的css细节
引言 首先说明一下,本文分享对象是涉世未深的移动开发者,至于有经验的开发者可以自行绕道. 说来惭愧,做了几年pc端的前端开发,很少接触到webapp的移动端开发.如今有机会参与webapp的开发,发现 ...
- ASP.NET MVC权限验证 封装类
写该权限类主要目地 为了让权限配置更加的灵活,可以根据SQL.json.或者XML的方式来动态进行页面的访问控制,以及没有权限的相关跳转. 使用步骤 1.要建一个全局过滤器 //受权过滤器 publi ...
- UWP开发入门(十六)——常见的内存泄漏的原因
本篇借鉴了同事翔哥的劳动成果,在巨人的肩膀上把稿子又念了一遍. 内存泄漏的概念我这里就不说了,之前<UWP开发入门(十三)——用Diagnostic Tool检查内存泄漏>中提到过,即使有 ...
- CentOS6.5菜鸟之旅:中文编辑器忍痛放弃Sublime
一.前言 Windows下习惯使用Sublime作为编辑器,谁知道Linux下的Sublime是如此不照顾中文用户,找了N久终于找到一个蹩脚的解决方案,于是我毅然决然地加入Vim的阵营. 二.苦苦追寻 ...
- .Net魔法堂:史上最全的ActiveX开发教程——发布篇
一. 前言 接着上一篇<.Net魔法堂:史上最全的ActiveX开发教程——开发篇>,本篇讲述如何发布我们的ActiveX. 二.废话少讲,马上看步骤! 1. 打包 C#开发的Activ ...
- 【第三课】ANR和OOM——贪快和贪多的后果(上)
恼人的ANR 早先年用Android的时候,就连很多知名的app也总是莫名其妙崩溃,好像手机快的时候会崩溃,手机卡的时候app会卡死.卡死的时候会弹出来一个框,询问是要结束app还是继续等待.这就是A ...
- BZOJ1087状压DP 解题报告
1087: [SCOI2005]互不侵犯King Description 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的 ...
- java俄罗斯方块游戏代码
java俄罗斯方块游戏代码: package com; import java.awt.Color; import java.awt.Graphics; import java.awt.event.K ...
- 与众不同 windows phone (35) - 8.0 新的启动器: ShareMediaTask, SaveAppointmentTask, MapsTask, MapsDirectionsTask, MapDownloaderTask
[源码下载] 与众不同 windows phone (35) - 8.0 新的启动器: ShareMediaTask, SaveAppointmentTask, MapsTask, MapsDirec ...
- A -- HDU 4585 Shaolin
Shaolin Time Limit: 1000 MS Memory Limit: 32768 KB 64-bit integer IO format: %I64d , %I64u Java clas ...
