• 一次Oracle宕机切换后产生ORA错误的处理过程


    问题背景

    机房意外断电后Oracle主服务器启动失败,Oracle备机接管

    为了安全,管理员对于数据库做expdp的逻辑备份。但备份时发现AttributeInstance表备份失败,提示ORA-01555。对该表执行Create AS Select进行备份时,同样报此错误。

    处理过程

    一、DB运维人员定位到是因为有几条数据的LOB字段(ObjValue)出现坏块造成的。
    二、定位到有问题的几条数据后,可以按类别采用如下处理:

    1、 运行中的实例,结合业务实际情况,可以考虑终止实例,重新提交审批;原实例数据做删除;

    2、 已结束的实例,将ObjValue字段置空;

    现在就可以成功对该表进行备份了。

    三、接下来又出现了插入报错的问题:

    正常业务系统运行,业务单据提交审批时,对AttributeInstance执行插入操作(包含LOB)时,触发了ORA-00600错误

    ORA-00600: 内部错误代码, 参数: [25027], [8], [0], [], [], [], [], [], [], [], [], []
       at System.Data.OracleClient.OracleConnection.CheckError(OciErrorHandle errorHandle, Int32 rc)
       at System.Data.OracleClient.OracleCommand.Execute(OciStatementHandle statementHandle, CommandBehavior behavior, Boolean needRowid, OciRowidDescriptor& rowidDescriptor, ArrayList& resultParameterOrdinals)
       at System.Data.OracleClient.OracleCommand.ExecuteNonQueryInternal(Boolean needRowid, OciRowidDescriptor& rowidDescriptor)
       at System.Data.OracleClient.OracleCommand.ExecuteNonQuery()
    

    查阅资料 http://blog.itpub.net/23850820/viewspace-1283016/

    问题原因:

          该问题是由于Oracle的一个bug导致(参考文档 ID 1608861.1),是由于含有LOB字段的表在插入数据时,一个块(Block)在ASSM metadata L1 bitmap block中被标示为格式化的,但是在LOB段中被标识为未格式化的。

          ORA-00600[25027][x][0] 中的x表示的是该LOB字段所在的表空间的ts#,即表空间号,第三个参数[0]可能并不总是0 (zero).

          可以使用DBMS_SPACE_ADMIN.ASSM_SEGMENT_VERIFY 存储过程,使用verify_option=>DBMS_SPACE_ADMIN.SEGMENT_VERIFY_SPECIFIC and attrib=>DBMS_SPACE_ADMIN.BITMAPS_CHECK来验证。

    解决方法:

          1.将表export导出,drop表,再imp进去

          2.对lob段做move到新的表空间

    Alter table tbName move lob(&lob_column) store as (tablespace &tbsp);

          3.patch 18024115 & alter system set "_fix_control"='18024115:ON';

  • 相关阅读:
    DetailsView应用之雕虫小技
    Javascript 调用C# 代码并传递参数的两种方法
    一键还原后,重装一遍 bartender7.75软件, 添加空白标签的时候提示 无法找到字体,无法在没文字情况下运行 求电脑帝解释
    JS处理Enter键触发执行的操作
    SoundManager 2 实现web页面中嵌入声音播放
    用Nexus搭建Maven远程仓库[私服]
    AmCharts一款统计图表及股票图表的插件
    HTML5添加网页音效
    Jquerymenuaim流畅的菜单滑动体验
    UML之JUDE{Astah}使用介绍
  • 原文地址:https://www.cnblogs.com/zhaoguan_wang/p/8166096.html
Copyright © 2020-2023  润新知