Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3673003
  • 博文数量: 715
  • 博客积分: 1860
  • 博客等级: 上尉
  • 技术积分: 7745
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-07 08:51
个人简介

偶尔有空上来看看

文章分类

全部博文(715)

文章存档

2023年(75)

2022年(134)

2021年(238)

2020年(115)

2019年(11)

2018年(9)

2017年(9)

2016年(17)

2015年(7)

2014年(4)

2013年(1)

2012年(11)

2011年(27)

2010年(35)

2009年(11)

2008年(11)

分类: LINUX

2021-04-10 20:06:40


oradebug已经很强大,有时也无法用,就需要考虑更底层工具,例如dbx或者叫gdb

如果安装好了gdb,那么直接执行效果:
(gdb)     ## 这是提示符,类似SQL> 的意思

如果没有的话,安装gdb
# yum -y install gdb

打开gdb的简洁方式
gdb -q   ## Do not print version number on startup 安静模式

看着哪个进程一直cpu繁忙或异常,可以
Linux:
通过top命令看到繁忙的进程pid
然后
$ gdb $ORACLE_HOME/bin/oracle PID
print ksudss(258)
然后去trace目录下找PID对应trc文件

aix:
topas 看到繁忙的进程pid



可以调用的函数:
print ksdhng(3,1,0) 相当于oradebug hanganalyze 3
print ksudps(10) 相当于oradebug dump processstate 10
print curdmp() 相当于oradebug call curdmp(也就是oradebug dump cursordump)
print ksdtrc(4) 相当于oradebug dump events 4(这里参数表示level,1–session,2–process,4–system)

print ksdsel(10046,12) –相当于为attach的进程设置10046事件level 12
print skdxipc() –相当于oradebug ipc
print skdxprst() –相当于oradebug procstat

先简单记录,下次试用。


参考:

  1. https://www.ibm.com/support/pages/debugger-commands-aix-dbx-solaris-dbx-linux-gdb

  2. https://blog.csdn.net/awm_kar98/article/details/82840811

  3. https://blog.csdn.net/u010692693/article/details/45502763




阅读(17285) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~