1,可以采用oradebug或者strace -p跟踪后台或前台进程是否dead或hang住2,如果进程出现故障,必会在对应的TRC文件写入最新信息,基于此可以获取非常重要的信息进一步分析与诊断   日志文件在background_dump_dest3,采用 ll -lhrt *lgwr*|tail -10f  获取最新的进程的TRC文件4,而且出现故障时,多半会在ALERT日志记录相关信息,此是排除故障重要且首要的方法及思路5,oradebug setospid ospid  oradebug…
在早期Oracle版本中,由于技术不成熟等原因,数据库锁定和僵死状态还是时有发生的.对待这些问题,老先生们的处理策略无外乎是“重启”和“考究”两种策略.所谓“重启”,通过强制的重启服务器或者数据库,将软硬件偶然出现的锁定僵死状态重置,是一种最简单的处理办法.但是,如果是应用程序层面潜在的缺陷.数据库的Bug或者诸如大规模事务回滚的情况,重启大法的作用是很有限的.况且,一些关键业务系统,重启数据库是需要很高级别的审批流程的.这个时候,就需要进行“考究”,仔细研究故障点进行精准分析. “考究”的过程…
原文链接:http://www.eygle.com/archives/2009/11/awk_ass109.html 以前分析Oracle的跟踪文件,主要靠手工阅读,最近发现ass109.awk文件是个不错的工具,在网上找到了一个,附在这里:ass109.rar通过ass109.awk文件,可以很容易将trace文件里的内容理出脉络来,清晰的发现问题所在,土了这么多年.解析了以前一个案例的80多M的跟踪文件,很快就可以找到其中的阻塞,Block信息:D:\Downloads\Mo\rpt1_or…
strace是什么? 按照strace官网的描述, strace是一个可用于诊断.调试和教学的Linux用户空间跟踪器.我们用它来监控用户空间进程和内核的交互,比如系统调用.信号传递.进程状态变更等. strace底层使用内核的ptrace特性来实现其功能. 在运维的日常工作中,故障处理和问题诊断是个主要的内容,也是必备的技能.strace作为一种动态跟踪工具,能够帮助运维高效地定位进程和服务故障.它像是一个侦探,通过系统调用的蛛丝马迹,告诉你异常的真相. strace能做什么? 运维工程师都是…
strace介绍及用途 strace是一个用于诊断,分析linux用户态进程的工具 类似的工具pstrace,lsof,gdb,pstrack strace观察mysqld对my.cnf 配置文件的加载顺序 命令如下:strace -T -tt -s 100 -o start.log /usr/local/mysql/bin/mysqld #  cat -n start.log |sed -n '152,165p'   152  03:43:41.399411 futex(0x7fb060f05…
  Linux下分析某个进程CPU占用率高的原因 通过top命令找出消耗资源高的线程id,利用strace命令查看该线程所有系统调用  1.top 查到占用cpu高的进程pid 2.查看该pid的线程:top -H -p 9532 3.查看这个线程所有系统调用:strace -p 10017 不停循环输出Connection timed out,让开发查看问题…
只做工作总结备忘之用. 正在烧镜像,稍总结一下进来改bug遇到的问题. 一个项目里要用到L3 switch的nat,vrrp功能,但实地测试中偶然出现write file挂死的情况,但不是必现.交付在即,于是加调试信息,反复跑配置的脚本,定位bug. 一,期初怀疑是vtysh与vrrpd进程通信出现阻塞(现象即是系统挂死). (1)因为在跑配置脚本时,出现了enable命令也挂死的情况,所以这么怀疑: (2)在vrrpd与vtysh命令传输的关键点加打印信息(注意vrrpd不要-d daemon…
所谓进程的地址空间,指的就是进程的虚拟地址空间.当创建一个进程时,内核会为该进程分配一个线性的地址空间(虚拟地址空间),有了虚拟地址空间后,内核就可以通过页表将进程的物理地址地址空间映射到其虚拟地址空间中,程序员所能看到的其实都是虚拟地址,物理地址对程序员而言是透明的.当程序运行时,MMU硬件机制会将程序中的虚拟地址转换成物理地址,然后在内存中找到指令和数据,来执行进程的代码.下面我们就来分析和进程的地址空间相关的各种数据结构和操作. 用到的数据结构: 1.内存描述符struct mm_stru…
http://www.ttlsa.com/tools/use-strace-to-track-multiple-processes/  strace是Linux环境下的一款程序调试工具,用来监察一个应用程序所使用的系统调用及它所接收的系统信息.追踪程序运行时的整个生命周期,输出每一个系统调用的名字,参数,返回值和执行消耗的时间等. strace常用参数:-p 跟踪指定的进程-f 跟踪由fork子进程系统调用-F 尝试跟踪vfork子进程系统调吸入,与-f同时出现时, vfork不被跟踪-o fi…
强制杀oracle进程: for p in `ps -ef| grep ora| awk '{print $2}'`;do kill -9 $p;done 修改 oracle xe 默认中文字符集成为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK Oracle XE 执行安装程序后,很简单的默认为  SIMPLIFIED CHINESE_CHINA.AL32UTF8 ,通过如下方法可以修改成为 ZHS16GBK . ---------------------- connec…