今天客户的GoldenGate出问题了,打电话过来咨询,根据客户描述的问题现象和日志的分析,初步判断是数据库索引异常引起的故障,以下是问题的分析和处理描述。

问题描述:

2010-02-01 17:19:28  GGS ERROR    103  Discard file (./dirrpt/repsz.dsc) exceeded max bytes (10000000).

2010-02-01 17:19:28  GGS ERROR    190  PROCESS ABENDING.

Discard文件摘录:

ORA-01502: index a.IDX_SB_SBXX_SSSQ_QZ' or partition of such index is in unusable state, SQL <UPDATE "a"."DJ_YZCWSBQC_CWBB" SET "NSRDZDAH" = :a21,"ND" = :a22,"YF" = :a23,"SSSQ_Q" = :a24,"SSSQ_Z" = :a25,"CWBBZL_DM" = :a26,"SBQX" = :a27,"YQSBQX" = :a28,"SBRQ" = :a29,"SBFS_DM" = :a30,"HY_DM">
Operation failed at seqno 1816 rba 153098124
Discarding record on action DISCARD on error 1502
Problem replicating CTAIS2.SB_SBXX to CTAIS2.SB_SBXX
Error (1502) occurred with insert record (target format)...
*

问题分析:

看到错误描述,又是一个discard文件写满进程abend的问题,这回是什么原因引起大量的写discard的操作的呢?通过分析discard文件发现大量的如下错误信息:or partition of such index is in unusable state。

看来是数据库的索引出现故障了,拿我们就先从处理数据库故障开始。

问题处理:

1、参考Oracle官方给出的处理这个ora类型错误的建议:

ORA-01502: index 'string.string' or partition of such index is in unusable state
Cause: An attempt has been made to access an index or index partition that has been marked unusable by a direct load or by a DDL operation
Action: DROP the specified index, or REBUILD the specified index, or REBUILD the unusable index partition

2、我们重建了这个有问题的索引

3、清空已经写满信息的discard文件

4、重新启动rep进程,故障排除。

Oracle数据库索引失效,引起GoldenGate异常相关推荐

  1. oracle怎么找出失效索引,Oracle数据库索引失效

    Oracle数据库中有一个表,用PL/SQL查看该表的索引没有被DROP掉, 但是表上的数据查询起来很慢(查询时间大概是原来的3倍),后 Oracle数据库中有一个表,用PL/SQL查看该表的索引没有 ...

  2. oracle删除数据索引失效,oracle数据库索引失效

    今天一个同事突然问我索引为什么失效.说实在的,失效的原因有多种: 但是如果是同样的sql如果在之前能够使用到索引,那么现在使用不到索引,以下几种主要情况: 1. 随着表的增长,where条件出来的数据 ...

  3. 资源放送丨《Oracle数据库索引分裂详解》PPT视频

    点击上方"蓝字" 关注我们,享更多干货! 前段时间,墨天轮邀请数据库资深专家 孙加鹏 老师分享了<Oracle数据库索引分裂详解>,在这里我们将课件PPT和实况录像分享 ...

  4. 本周两场直播丨通过源码了解openGauss多线程架构;Oracle数据库索引分裂详解。...

    1.管中窥豹之通过源码了解openGauss多线程架构-8月18日20:00 本讲座主要介绍openGauss的多线程架构,通过源码了解线程间通信机制.线程池的原理和优势.如何开启线程池等,力图通过多 ...

  5. oracle数据库索引介绍,SQL Server和Oracle数据库索引介绍

    SQL Server和Oracle数据库索引介绍 SQL Server 和 Oracle 数据库索引介绍1 SQL Server 中的索引 索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行 ...

  6. oracle数据库索引

    oracle数据库索引 1.b-tree索引 2.位图索引 3.函数索引 3.哈希索引:不适合模糊查询和范围查询(包括like,>,<,between--and等),由于 Hash 索引比 ...

  7. oracle 数据转换不报错,oracle数据库与hibernate方言转型异常

    oracle数据库与hibernate方言转型异常 报错信息: org.hibernate.MappingException: No Dialect mapping for JDBC type: -9 ...

  8. 范围查找(比如日期范围)下查询出现全表扫描MySQL数据库索引失效

    范围查找(比如日期范围)下查询出现全表扫描MySQL数据库索引失效 当下MySQL数据库在多款数据库中脱颖而出,成为使用最广泛的数据库之一,这里我们来看看数据库索引上的一个问题.我们知道在数据量上去以 ...

  9. oracle or索引失效_oracle数据库中索引会失效的几种情况

    创建Oracle 索引的目的是为了避免全表扫描数据,提高查询效率,但是如果sql语句写的不好致使索引失效,反而会影响数据查询效率.以下几种情况就会导致索引失效: 没有 WHERE 子句 众所周知,添加 ...

最新文章

  1. WPF入门教程系列九——布局之DockPanel与ViewBox(四)
  2. 20140725 快速排序时间复杂度 sTL入门
  3. 部署 Communicator Web Access
  4. Headfirst设计模式的C++实现——策略模式(Strategy)
  5. C语言状态机编程思想
  6. declaration of 'int ret' shadows a parameter
  7. PHP 接收 UDP包_php只能做网站?基于swoole+websocket开发双向通信应用
  8. CSS之深入理解 flex 布局以及计算
  9. typescript 接口 interface 的理解
  10. HTML5块元素标签的使用
  11. python游戏项目练习——逃出生天(2)
  12. anaconda 完全卸载——重装
  13. 英语语法总结--形容词和副词
  14. 基于java的密码字典生成
  15. 关于Toast的一些常见操作
  16. day 0150面向对象-成员
  17. python 图片处理模块_python Image 模块处理图片
  18. freemaker导出excel文件使用Excel打不开
  19. 可重入锁/不可重入锁,公平锁/非公平锁,乐观锁/悲观锁,独享锁/共享锁,偏向锁/轻量级锁/重量级锁,分段锁,自旋锁
  20. UVA 12325 宝箱 Zombie‘s Treasure Chest

热门文章

  1. 源码安装sippyqt4 for ubuntu,anconda3,python3
  2. 高斯混合模型(Gaussian Mixture Model)
  3. 使用Microsoft Unity进行日志记录
  4. 因OpenCV版本不一致所引发的报错
  5. Firefox下代码触发a标签的click事件无效
  6. 007.androidUI开发进阶(基础--案例) .
  7. laravel5.5事件系统
  8. 【Android】进入Material Design时代
  9. 8-5 Navicat工具与pymysql模块
  10. linux 基础 文件系统 用户权限