在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

如何用oradebug short

116次阅读
没有评论

共计 5580 个字符,预计需要花费 14 分钟才能阅读完成。

行业资讯    
数据库    
关系型数据库    
如何用 oradebug short_stack 及 strace - p 分析 oracle 进程是否 dead 或出现故障

这篇文章给大家介绍如何用 oradebug short_stack 及 strace - p 分析 oracle 进程是否 dead 或出现故障,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

1, 可以采用 oradebug 或者 strace - p 跟踪后台或前台进程是否 dead 或 hang 住
2, 如果进程出现故障,必会在对应的 TRC 文件写入最新信息,基于此可以获取非常重要的信息进一步分析与诊断
    日志文件在 background_dump_dest
3, 采用 ll -lhrt *lgwr*|tail -10f   获取最新的进程的 TRC 文件
4, 而且出现故障时,多半会在 ALERT 日志记录相关信息,此是排除故障重要且首要的方法及思路
5,oradebug setospid ospid
  oradebug short_stack
  会显示进程的堆栈信息,注意:可以间隔多次运行,如果多次显示的堆栈信息一致,可以肯定此进程肯定是 dead 或出现故障了

6,可以用 strace -p ospid 跟踪分析,

—hang 或故障时的类似信息如下
semtimedop(9273344, 0x7fffe66199d0, 1, {1, 0}) = -1 EAGAIN (Resource temporarily unavailable)

— 正常时的类似信息如下
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440015944
semtimedop(9273344, 0x7fffe661b1f0, 1, {1, 800000000}) = -1 EAGAIN (Resource temporarily unavailable)
getrusage(RUSAGE_SELF, {ru_utime={0, 123981}, ru_stime={0, 132979}, …}) = 0
getrusage(RUSAGE_SELF, {ru_utime={0, 123981}, ru_stime={0, 132979}, …}) = 0
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016124
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016124
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016124
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016124
semtimedop(9273344, 0x7fffe661b1f0, 1, {3, 0}) = -1 EAGAIN (Resource temporarily unavailable)
getrusage(RUSAGE_SELF, {ru_utime={0, 123981}, ru_stime={0, 132979}, …}) = 0
getrusage(RUSAGE_SELF, {ru_utime={0, 123981}, ru_stime={0, 132979}, …}) = 0
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016424
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016424
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016424
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016424
semtimedop(9273344, 0x7fffe661b1f0, 1, {3, 0}) = -1 EAGAIN (Resource temporarily unavailable)
getrusage(RUSAGE_SELF, {ru_utime={0, 123981}, ru_stime={0, 132979}, …}) = 0
getrusage(RUSAGE_SELF, {ru_utime={0, 123981}, ru_stime={0, 132979}, …}) = 0
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016725
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016725
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016725
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440016725
semtimedop(9273344, 0x7fffe661b1f0, 1, {3, 0}) = -1 EAGAIN (Resource temporarily unavailable)
getrusage(RUSAGE_SELF, {ru_utime={0, 123981}, ru_stime={0, 132979}, …}) = 0
getrusage(RUSAGE_SELF, {ru_utime={0, 123981}, ru_stime={0, 132979}, …}) = 0
times({tms_utime=12, tms_stime=13, tms_cutime=0, tms_cstime=0}) = 440017025
open(/proc/4385/stat , O_RDONLY)       = 35
read(35, 4385 (oracle) S 1 4385 4385 0 -1 …, 999) = 225

说白了,就是看信息有没有变化,有变化就说明进程是正常的,否则就说明是不正常的

测试

SQL select * from v$version where rownum=1;

BANNER
——————————————————————————–
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 – 64bit Production

查看后台进程
SQL select pid,spid,pname,username from v$process order by 1;

       PID SPID       PNAME      USERNAME
———- ———- ———- ——————————
         1
         2 4385       PMON       oracle
         3 4387       VKTM       oracle
         4 4391       GEN0       oracle
         5 4393       DIAG       oracle
         6 4395       DBRM       oracle
         7 4397       PSP0       oracle
         8 4399       DIA0       oracle
         9 4401       MMAN       oracle
        10 4403       DBW0       oracle
        11 4405       LGWR       oracle

       PID SPID       PNAME      USERNAME
———- ———- ———- ——————————
        12 4407       CKPT       oracle
        13 4409       SMON       oracle
        14 4411       RECO       oracle
        15 4413       MMON       oracle
        16 4415       MMNL       oracle
        17 4417       D000       oracle
        18 4419       S000       oracle
        19 4652       SMCO       oracle
        20 5266       W000       oracle
        21 4936                  oracle
        27 4468       ARC0       oracle
       PID SPID       PNAME      USERNAME
———- ———- ———- ——————————
        28 4481       ARC1       oracle
        29 4486       ARC2       oracle
        30 4489       ARC3       oracle
        31 4496       QMNC       oracle
        32 4549       Q000       oracle
        33 4551       Q001       oracle
        34 4568                  oracle

29 rows selected.

SQL  
— 查看 TRC 文件目录
[oracle@seconary trace]$ ll -lhrt *lgwr*|tail -10f
-rw-r—– 1 oracle oinstall  213 Dec 14 19:05 guowang_lgwr_5297.trm
-rw-r—– 1 oracle oinstall 2.4K Dec 14 19:05 guowang_lgwr_5297.trc
-rw-r—– 1 oracle oinstall 2.3K Dec 15 01:05 guowang_lgwr_22295.trm
-rw-r—– 1 oracle oinstall  27K Dec 15 01:05 guowang_lgwr_22295.trc
-rw-r—– 1 oracle oinstall   63 Dec 15 02:18 guowang_lgwr_31280.trm
-rw-r—– 1 oracle oinstall  903 Dec 15 02:18 guowang_lgwr_31280.trc
-rw-r—– 1 oracle oinstall   63 Dec 15 02:44 guowang_lgwr_32077.trm
-rw-r—– 1 oracle oinstall  906 Dec 15 02:44 guowang_lgwr_32077.trc
-rw-r—– 1 oracle oinstall   62 Dec 15 03:27 guowang_lgwr_1032.trm
-rw-r—– 1 oracle oinstall  887 Dec 15 03:27 guowang_lgwr_1032.trc

—HANG LGWR
SQL oradebug setospid 4405
Oracle pid: 11, Unix process pid: 4405, image: oracle@seconary (LGWR)
SQL oradebug suspend
Statement processed.

–ALERT 同步记录上述信息
Tue Dec 15 04:46:15 2015
Unix process pid: 4405, image: oracle@seconary (LGWR) flash frozen [command #1]

—TRC 目录同步记录上述信息
[oracle@seconary trace]$ ll -lhrt *lgwr*|tail -10f
-rw-r—– 1 oracle oinstall 2.3K Dec 15 01:05 guowang_lgwr_22295.trm
-rw-r—– 1 oracle oinstall  27K Dec 15 01:05 guowang_lgwr_22295.trc
-rw-r—– 1 oracle oinstall   63 Dec 15 02:18 guowang_lgwr_31280.trm
-rw-r—– 1 oracle oinstall  903 Dec 15 02:18 guowang_lgwr_31280.trc
-rw-r—– 1 oracle oinstall   63 Dec 15 02:44 guowang_lgwr_32077.trm
-rw-r—– 1 oracle oinstall  906 Dec 15 02:44 guowang_lgwr_32077.trc
-rw-r—– 1 oracle oinstall   62 Dec 15 03:27 guowang_lgwr_1032.trm
-rw-r—– 1 oracle oinstall  887 Dec 15 03:27 guowang_lgwr_1032.trc
-rw-r—– 1 oracle oinstall   63 Dec 15 04:46 guowang_lgwr_4405.trm
-rw-r—– 1 oracle oinstall  896 Dec 15 04:46 guowang_lgwr_4405.trc
[oracle@seconary trace]$ 

关于如何用 oradebug short_stack 及 strace - p 分析 oracle 进程是否 dead 或出现故障就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-20发表,共计5580字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 亚洲国产欧美日韩 | 日韩视频在线观看免费 | 午夜久久久精品 | 日韩在线一区二区三区免费视频 | 国精产品一区一区三区 | 精品91一区二区三区 | 亚洲成人福利视频 | 久久久久亚洲av综合波多野结衣 | 成人福利在线 | 浮力影院草草影院 | 爱爱小视频免费体验区在线观看 | 中国人免费观看高清在线观看二区 | 一级特黄性色生活片一区二区 | 成人白浆超碰人人人人 | 欧美牲交a欧美牲交aⅴ | 日本1区二区三区公司 | 成人性毛片 | 久久精品免费一区二区三区 | 人妻少妇精品无码专区二区 | 日韩 欧美 中文 | 人妻互换一二三区激情视频 | 久久精品在 | 国产成人18黄网站 | 国产麻豆放荡av剧情演绎 | 成人毛片免费视频播放 | 视频一区二区中文字幕 | 亚洲精品一区二区三区香蕉在线看 | 2022国产精品自拍 | 日韩国产一区二区 | 久久久影院亚洲精品 | 久久国产综合精品swag蓝导航 | 国产乱理伦片a级在线观看 国产乱理伦片在线观看 | 久久超碰97人人做人人爱 | 午夜影视体验区 | 中文字幕在线播放视频 | 日韩人妻高清精品专区 | 欧美作爱福利免费观看视频 | 国产a√精品区二区三区四区 | 草草视频手机在线观看视频 | 中文字幕第一页面 | 国产欧美另类久久精品91 |