Oracle问题排查步骤

一、确定问题
1. 程序是否曾经正常工作过?是始终运行得不好,还是刚开始这样?是什么时侯开始发现问题的?
2. 程序返回预期的结果,还是异常终止?
3. 哪些用户抱怨?
4. 所使用的是什么用户登录?
5 应用程序在延迟期间试图执行什么?
6. 连接到了什么服务器或数据库
7. 所使用数据库版本是什么?
8. 连接是远程的还是本地的?
9. 是否涉及到多个数据库?
A. 是否只有一组用户遇到问题?
B. 程序有没有任何改动?

二、量化问题并注意所有异常因素
1. 检查基本信息
. 检查所查询数据库的警告日志。注意观察所有异常的错误消息,比如空间或回滚问题
. 检查关于空间错误的其他线索
. 确定没有达到文件的AUTOEXETEND限制
. 确定文件的日志文件系统没有达到最大值
. 确定没有达到最大用户数
. 确定包含listener.log的文件系统没有达到最大值
. 确定生成了统计数据
2. 有无错误消息
3. 在控制环境下重新运行应用程序(使用会话跟踪)
4. 检查应用程序运行日志
5. 查询v$sql视图以找到对应的SQL语句
6. 监视活动和非活动会话
7. 需要注意的问题:
>> 查询延迟了多长时间?
>> 消耗了多少CPU时间?
>> 进行了多少次磁盘读取?
>> 进行了多少次逻辑读取?
>> SQL语句被执行了多少次?
>> 存在大量的网络传输吗?
>> 应用程序有没有使用其他的数据库链接?如果有,用到其他哪些数据库连接?
>> 存在其他服务器活动吗?如果存在,是什么活动、何时发生?
>> 是否有其他进程阻塞了工作?
方法:激活TRACE生成跟踪文件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 由于ARCHIVE挂起导致数据库挂死 2 NIT文件中SGA区设置太大,导致内存不够用,数据库和系统都挂死 3 由于临时表空间无法扩展导致数据库被挂起 4由于未打补丁导致RMAN备份时将数据库挂起 5由于BLOB类型的表记录数太多操作又太频繁导致数据库效率急差 6由于未对特大表(达到或超过100万条记录)定期做表分析导致数据库操作特别慢 7由于空间不够导致插入数据时扩展索引失败 8由于REDOLOG破坏导致数据库异常 9由于控制文件被破坏导致数据库无法正常启动 10由于数据文件丢失或破坏导致数据库无法正常启动 11由于空间参数设置不合理导致扩展表空间、索引等失败 12由于时间格式的环境变量设置问题导致话单无法入库 13由于大事务未使用大回滚段导致事务挂起 14由于数据库连接数太多导致服务器进程数多或内存耗尽 15由于使用了MTS方式,导致数据库操作特别慢(包括备份) 16由于存在一个大事务操作,导致数据库性能特别差或产生频繁日志切换 17由于没有COMMIT,导致数据库表被锁住 18索引创建不合理,导致数据库查询特别慢 19 由于BUFFER参数设置不合理导致EXP失败 20由于EXP不向上兼容,语言不兼容,导致不同版本、不同字符集的数据库无法导入 21 由于创建表空间时误将其创建在以‘本地管理’,导致在表空间上的所有对象无法修改其存储参数 22 错误地在系统表空间上建无关的数据文件 23 ORACLE客户端在P4上安装不成功 24由于LISTENER.ORA或TNSNAMES.ORA配置问题导致网络问题 25由于环境变量设置问题导致VERSOIN版本启动问题 26用户数据、表破坏下的数据恢复 27 由于OS层问题导致数据库ORA-600错误 .....

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值