共计 591 个字符,预计需要花费 2 分钟才能阅读完成。
今天,开发同学反馈,数据库 Oracle 链接过一段时间就会断掉,他问是不是因为 IIS 和数据库不在一个网段的原因,要长连接才可以吧?于是,登录这套数据库的 EMCC 12C 监控里发现 有 2 个 SQL 执行了很长时间 都失败,如下图
查看 alert 日志文件, 发现有以下报错, 如下图,
查看上图所示的那个 trc 文件,如下图操作,
发现里面的报错 为 ORA-20000,即用户对应的表下有一个索引不可用,见下图所示,
Alert 日志文件里也有那个 ORA-20000 的报错,见下图,
接着,处理步骤如下:
1. 进 sqlplus,查询发现,有无效索引,如下图所示,
2. 查询表 T_STUDENT_DURATION 的数据发现有 3500 多万,见下图,
3. 用 rebuild 命令重建上面查出的两个无效索引,见下图操作,
4. 再次用上面的 SQL 进行查询,发现无效的索引不存在了,见下图,
5. 次日,进入这套数据库的 EMCC 12C 监控里发现那 2 个 SQL 执行状态为正常而且执行完毕,见下图查看结果,
然后再查看 alert 日志文件,在当天的时间段,发现已经没有 ORA-20000 的故障代码了。
更多 Oracle 相关信息见 Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-11/148509.htm
正文完
星哥玩云-微信公众号