仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1681|回复: 9
打印 上一主题 下一主题

[学习教程] MYSQL编程:ORA-00600 [2662]毛病办理历程

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:42:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
你可以配置MySQL运行在微小的嵌入式应用程序中,处理的数据可能不足1Mb??而你也可以用它来处理数Tb的数据。MySQL获得这种可扩展性的路径之一是通过一个人们所熟知的存储过程,这是一个运行在程序之外的微型、预编译程序。毛病|历程|办理
ORA-00600[2662]毛病办理历程

数据库版本:7.3.2



背景:

客户何处数据库俄然呈现一个current日记文件坏了,招致数据库crash了,然后现场工程师利用_ALLOW_RESETLOGS_CORRUPTION=TRUE这个隐含参数,做了不完整恢复后强即将数据库翻开。但是翻开数据库后发明只能用internal用户毗连出来,其余用户毗连都报错,毛病信息以下:

ORA-00600:internalerrorcode,arguments:[2662],[0],[431267936],[0],[431273216],[0],[],[]

查询不了任何使用的表,使用也没法利用,因而想实验全库的exp出来然后从头imp出来建库,了局发明exp数据也不乐成,也是报一样的ORA-600的毛病,用户事先数据没有任何的备份过,只能想举措只管翻开数据库,导出数据了。



处置历程:

先反省了600毛病发生的trace文件:

***SESSIONID:(7.15)2004.11.23.23.28.16.824

ksedmp:internalorfatalerror

ORA-00600:internalerrorcode,arguments:[2662],[0],[431267754],[0],[431272752],[0],[],[]

CurrentSQLstatementforthissession:

SELECT*FROM"WHSB"."SB_BSBF"

失掉的信息无限,只能看到是严峻外部毛病,剩下的都是内存仓库的一堆信息,因而查找了一下这个毛病的详细相干信息。

ORA-600[2662]"BlockSCNisaheadofCurrentSCN",申明以后数据库的数据块的SCN早于以后的SCN,次要是和存储在UGA变量中的dependentSCN举行对照,假如以后的SCN小于它,数据库就会发生这个ORA-600[2662]的毛病了。这个毛病一共有五个参数,分离代表分歧的寄义,

ORA-600[2662][a][b][c][d][e]

Arg[a]CurrentSCNWRAP

Arg[b]CurrentSCNBASE

Arg[c]dependentSCNWRAP

Arg[d]dependentSCNBASE

Arg[e]WherepresentthisistheDBAwherethedependentSCNcamefrom.

我们剖析毛病中的提醒,它的参数b=431267754,d=431272752,标明以后的SCN的确是小于dependentSCN,以是发生了这个600的毛病。

经由过程查阅文档,发明这个毛病的发生缘故原由次要有以下几条:

l利用隐含参数_ALLOW_RESETLOGS_CORRUPTION后resetlogs翻开数据库

l硬件毛病引发数据库没法写把持文件和重做日记文件

l毛病的部分恢单数据库

l恢复了把持文件可是没有利用recoverdatabaseusingbackupcontrolfile举行恢复

l数据库crash后设置了_DISABLE_LOGGING隐含参数

l在并行服务器情况中DLM存在成绩

细心对照了一下,发明成绩多是因为第一条发生的,因为设置了_ALLOW_RESETLOGS_CORRUPTION这个隐含参数后,固然强迫性的翻开数据库,可是数据库自己存在了corruption,仍旧存在严峻的成绩。

因而想到利用ADJUST_SCN事务来调剂以后的SCN,使其年夜于dependentSCN,然后包管数据库能够全库的导出,然后重修数据库导进数据。

用internal用户上岸数据库后,毗连其余用户,仍是失利报错,实行:

altersessionseteventsIMMEDIATEtracenameADJUST_SCNlevel1;

然后实验毗连其余用户,毗连乐成。

最初exp全部数据库,重修数据库后导进数据,全部数据库恢复乐成!



经由过程这个实例,我们能够看到,只管的不要往利用那些隐含参数,这些参数是oracle所不保举利用的,也不是全能的!假如利用了大概会存在一些遗留的成绩,假如非要利用,倡议利用后必定要exp/imp重修创建数据库。
MySQL数据库归MySQLAB公司所有,但是这个软件是开源的,有一个MySQL学习教程可以免费下载。稍俱常识的新入门者都可以轻松实现在一个常见硬件上安装和配置MySQL。
再见西城 该用户已被删除
沙发
发表于 2015-1-18 06:35:10 | 只看该作者
如果你是从“学习某一种数据库应用软件,从而获得应聘的资本和工作机会”的角度来问的话。
分手快乐 该用户已被删除
板凳
发表于 2015-1-21 11:55:35 | 只看该作者
varchar(max)\\\\nvarchar(max)类型的引入大大的提高了编程的效率,可以使用字符串函数对CLOB类型进行操作,这是一个亮点。
变相怪杰 该用户已被删除
地板
发表于 2015-1-30 17:37:42 | 只看该作者
SP4是一个累积性的ServicePack,包含自以前的ServicePack发布以来所有的修补程序(包括MS03-031安全公告)。
admin 该用户已被删除
5#
发表于 2015-2-6 14:28:34 | 只看该作者
分区表效率问题肯定是大家关心的问题。在我的试验中,如果按照分区字段进行的查询(过滤)效率会高于未分区表的相同语句。但是如果按照非分区字段进行查询,效率会低于未分区表的相同语句。
蒙在股里 该用户已被删除
6#
发表于 2015-2-16 12:57:13 | 只看该作者
这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。
小魔女 该用户已被删除
7#
发表于 2015-3-5 06:21:39 | 只看该作者
如果我们从集合论(关系代数)的角度来看,一张数据库的表就是一组数据元的关系,而每个SQL语句会改变一种或数种关系,从而产生出新的数据元的关系(即产生新的表)。
冷月葬花魂 该用户已被删除
8#
发表于 2015-3-11 23:39:13 | 只看该作者
总感觉自己还是不会SQL
柔情似水 该用户已被删除
9#
发表于 2015-3-19 16:24:24 | 只看该作者
微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。
若天明 该用户已被删除
10#
发表于 2015-3-29 05:48:59 | 只看该作者
可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-4-20 15:35

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表