视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle无响应故障
2020-11-09 11:56:20 责编:小采
文档


-Oracle的进程在等待某个资源或事件-Oracle Process Spins,所谓Spin,就是指Oracle进程中的代码在执行某个过程时,陷入循环。在v

1.现象

数据库实例不能响应客户端的发起的请求。

2.种类

-Oracle的进程在等待某个资源或事件

-Oracle Process Spins,所谓Spin,就是指Oracle进程中的代码在执行某个过程时,陷入循环。在v$session视图中,往往可以看到Hang住的会话

一直处于"ACTIVE"状态.

3.从故障范围来看,无响应故障可以分为以下几种情况:

-单个或部分会话Hang住

-单个数据实例Hang住

-OPS或RAC中的多个实例或所有实例都Hang住

4.无响应故障成因分析

-数据库主机负载过高,严重的超过主机承受能力

--应用设计不发,数据性能低下,活动会话数大量增加

--主机内存严重不足,引起大量的换页

-日常维护不当

--归档日志的存储空间满

--对DML操作比较多的大表进行move,增加外键约束

--不正确的资源计划配置

-Oracle数据库的Bug

-其他方面的一些原因

--如RAC数据库中,如果一个节点退出或加入RAC的过程中,当进行Resource Reconfiguration时,会使系统冻结一段时间

5.无故障处理流程

-确认系统的影响范围

-同时询问系统维护和开发人员,受影响的系统在出现故障前是否有过变动

包括主机、硬件、操作系统、网络、数据库及应用

-为了避免由于网络、数据库监听或客户端因素影响分析,登录到主机上进行操作

-如果不能登录主机,,尝试关闭业务系统,重启主机,监控主机资源

-登录主机后,先用top,topas等命令查询系统CPU使用,物理内存,虚拟内在的使用,IO使用等情况

-使用SQLPLUS连接数据,使用gdb,dbx等debugger工具对数据库进行system state dump;使用strace truss等工具检查异常进程的系统调用

使用用pstack,procstack等工具察看异常进程的call stack等

6.使用sqlplus连接上数据后,进行hanganalyze,system state dump等操作;检查等待事件,异常会话等正在执行的SQL等

7.找到故障原因,尽量收集数据

8.如急须恢复,可通过kill会话,重启动数据库实例等方式,先恢复应用

9.根据最终诊断结果,对数据库升级打补丁或者修改应用等方式从根本上解决问题。

下载本文
显示全文
专题