银河国际手机版最新:故障诊断,故障诊断案例

故障检查判断 | 系统级追踪会诊方法及案例分享,故障检查判断案例

点击上方淡白紫文字关切↑↑↑↑↑

所谓操作系统,是应用程序与服务器硬件进行联络的中间层。应用程序的有所操作,都是和操作系统举行关联互动。操作系统肩负将有着交互转化为器械语言,进行硬件交互。

我们在张开Oracle故障调节和测量试验和基础原理工科作的时候,平常索要精通后台运转的动作和细节。一些故障场景,如ORACLE后台举行慢、程序不可能起动、不能够登录、一样情形实行理并了结果却大不相同样等主题素材,就供给操作系统等第监察和控制,检查定位难题。

Oracle自己已经提供了相当多那项目标工具,如oradebug、各样等待事件和追踪办法。别的,各种目标操作系统提供出过多系统等级工具,扶助大家开展监督。

 

大家先来看三个粗略的身体力行:

LGWOdyssey进度写 online redo log是还是不是用到缓存?

此处的这么些缓存不是指数据库缓存,操作系统的文本缓存,如若对这些难题不驾驭,我们先看别的一个标题,我们假若疑惑存款和储蓄不寻常,日常会选拔DD命令对磁盘实行测量检验,相关命令如下所示,那那个命令对磁盘的操作是直接写磁盘依然把数量写到文件缓存里去?

咱俩来实地实行测验评释看一下,那是在自己计算机设想机上的八个测量试验结果,DD了2G的文件,花了4.99秒的年华,实际上那个命令停止的时候数据没真正写到磁盘上去,对于磁盘的写到缓存就赶回了。大家别的看一条命令

此间加了叁个标注,就是ofag=sync,加完这一个标志之后,大家开采访编写磁盘的速度回退了,写2G的文件花了8秒,多用了五分之二的光阴。那正是文件系统缓存的法力,文件系统缓存大大扩展了主机的个性。

咱俩今后回来在此之前极度标题,LGW冠道进度写redo log
会不会用到缓存呢?我们选用strace
–p命令来追踪LGW索罗德进程,为便利观望我们增加一组新的redo日志组并张开切换。

通过深入分析TRACE音信大家开采,LGW库罗德进度对online redo
log展开使用了o_sync标示,该标示表示一直写入存款和储蓄设备。

TRUSS/TUSC/STRACE是什么?

上边作者援用一下TRUSS的法定解释,TUSC与STRACE工具功用焦点一样。

它是三个在系统层管理叶影参差难点特别管用的工具,用来追踪八个进度的种类调用可能复信号发生的地方。适用于分歧的系统意况。

它们适用于分歧的Unix情状:

•      Truss : AIX,Solaris

•      Tusc  :HP-Unix(需单独安装)

•      Strace:Linux

Truss常用参数介绍

参数 介绍
-a 显示在每一执行系统调用中传递的参数字符串。
-c 计数跟踪系统调用、故障和信号而不是逐行显示跟踪结果。跟踪命令终止或 truss 中断时生成摘要报告。若还使用 -f 标志,计数包含所有跟踪的系统调用、故障和子进程信号。
-d 每行输出包含时间戳记。时间从跟踪开始以每秒显示。跟踪输出的第一行显示测量单个时间戳记的基本时间。缺省不显示时间戳记。
-D 每行输出显示增量时间。增量时间表示从由该线程引起的最后报告事件起计时引起事件的 LWP 的逝去时间。缺省不显示增量时间。
-e 显示在每一执行系统调用中传递的环境字符串。
-f 跟在 fork 系统调用产生的所有子进程之后,并包含跟踪输出中的信号、故障和系统调用。 通常,仅跟踪第一级命令和进程。如果指定 -f 标志,进程标识与每行跟踪输出一起显示哪个进程执行系统调用或接收信号。
-l 显示有关 LWP 进程的标识(线程标识)及 truss 输出。输出中缺省不显示 LWP 标识。
-o 指定用于跟踪输出的文件。缺省时输出指向标准错误。
-p 将参数作为一列现存进程的进程标识而不是要执行的命令解释到 truss。 倘若进程用户标识或组标识与用户的用户标识或组标识匹配或者用户是特权用户,truss 控制并开始跟踪每个进程。

Tusc常用参数介绍

Strace常用参数介绍

参数 介绍
-c 统计每一系统调用的所执行的时间,次数和出错的次数等.
-d 输出strace关于标准错误的调试信息.
-f 跟踪由fork调用所产生的子进程. 
-ff 如果提供-o filename,则所有进程的跟踪结果输出到相应的filename.pid中,pid是各进程的进程号.
-F 尝试跟踪vfork调用.在-f时,vfork不被跟踪.
-h 输出简要的帮助信息.
-i 输出系统调用的入口指针.
-q 禁止输出关于脱离的消息.
-r 打印出相对时间关于,,每一个系统调用.
-t 在输出中的每一行前加上时间信息.
-tt 在输出中的每一行前加上时间信息,微秒级.
-ttt 微秒级输出,以秒了表示时间.
-T 显示每一调用所耗的时间.
-v 输出所有的系统调用.一些调用关于环境变量,状态,输入输出等调用由于使用频繁,默认不输出.
-V 输出strace的版本信息.

上面大家看五个差不离的利用示例:

先是是使用strace –tt
date来追踪date命令,使用-tt参数在每一行的衣衫上加多岁月音讯,到阿秒品级。

别的三个示范正是行使strace –d
cate命令计算全体函数调用的次数及总时间占有,那一个对于命令追踪的深入分析计算极其实用

一个SQLPLUS连接慢的难点

接下去我们来看三个案例,这一个案例是三个SQLPLUS连接慢的难点,AIX
7.1的操作系统,11.2.0.3
两节点RAC数据库,检查硬件的装置情状并未难点,重新配置蒙受变量也不能够解决难点。

对于这种主题材料,大家率先要开展局地排查,排除有的可能性:

1、  我们看一下运用sqlplus/ as sysdba慢非常快,经过申报,sqlplus / as
sysdba也慢,连接时间要5秒左右。

2、  远程连接慢非常的慢?

  1. 本地利用远程连接慢一点也不慢  sqplus
    username/[email protected]
    澄清: 测量试验也慢,慢约5秒钟左右。

  2. 其余主机使用远程慢相当慢?澄清:同样也慢, 慢约5分钟左右。

上述判断评释那些一而再慢并不是必然和Listener有关,同一时候也足避防除互联网难题引起的监听连接慢,所以先必要消除sqlplus
/ as sysdba 慢的难点,十分大大概在ORACLE数据库的接二连三管理体制方面。

我们选取TRUSS命令去追踪盯梢sqlplus / as
sysdba连接命令,开采不断出新sigpromask、_sigaction及thread_setmystate函数调用。

那那个函数代表怎么着?

尔后对那些函数举办深入分析,其重要职能如下:

We see in that truss that main reason weare waiting is that the forked
thread is looping on some signal handlingmodification :

 They impact the way memory isconfigured (read/write protected, guard
pages…)

经过上述深入分析开掘,连接的时候慢与内部存款和储蓄器页的分配有关,通过越发检查内部存款和储蓄器参数开掘,pre_page_sga设置为true。接下来通过测量试验能够复出那个难题,实际验证的确如此:设置为true,难题重现,设置为false,难题未有,並且开采那个参数为True的意况下,SGA内部存款和储蓄器越辛辛那提接变慢的越猛烈。

这种作为平常化啊?

经过询问MOS文书档案Notes 289585.1,大家驾驭知这一个作为是常规。

关切本群众号,回复:prelection,你能够找到本文的相干录制文书档案。

连带阅读:

DBA生存警示:系统存款和储蓄级误删除案例及防止提出

故障检查判断:DRM导致Oracle RAC节点Hang住

故障深入分析:数据库一致性关闭缓慢难点会诊

深刻内核:监听器的专门的学业规律与故障会诊深入分析

财富下载

无微不至大伙儿号:数据和云(OraNews)回复关键字获取

‘2017DTC’,2017DTC大会PPT

‘DBALIFE’,“DBA的一天”海报

‘DBA04’,DBA手记4优异篇章电子书

‘RACV1’, RAC体系课程录制及ppt

‘122ARCH’,Oracle 12.2系列布局图

‘2017OOW’,Oracle OpenWorld资料

‘PRELECTION’,大讲堂教师课程资料

点击上方浅莲灰文字关怀↑↑↑↑↑

所谓操作系统,是应用程序与服务器硬件进行沟通的中间层。应用程序的持有操作,都是和操作系统进行关联互动。操作系统担负将有着交互转化为道具语言,举办硬件交互。

咱俩在实行Oracle故障调节和测量试验和基本原管事人业的时候,平时须要了然后台运转的动作和细节。一些故障场景,如ORACLE后台举行慢、程序不能够起动、不或许登入、同样碰着举行理并了结果却大分化等主题材料,就需求操作系统等第监察和控制,检查定位难题。

Oracle自个儿已经提供了众多那项目标工具,如oradebug、种种等待事件和追踪办法。其余,种种型的操作系统提供出广轮廓系品级工具,帮忙大家进行督查。

 

咱俩先来看一个总结的身体力行:

LGWQX56进程写 online redo
log是还是不是用到缓存?银河国际手机版最新 1

此处的这些缓存不是指数据库缓存,操作系统的公文缓存,假诺对那个主题材料不清楚,大家先看其余一个难题,我们只要疑心存款和储蓄有标题,平日会利用DD命令对磁盘进行测量检验,相关命令如下所示,那那几个命令对磁盘的操作是直接写磁盘照旧把数量写到文件缓存里去?

银河国际手机版最新 2

咱俩来实地实行测量试验注解看一下,那是在自个儿电脑设想机上的多个测验结果,DD了2G的文件,花了4.99秒的小运,实际上这些命令截至的时候数据没真正写到磁盘上去,对于磁盘的写到缓存就回来了。大家别的看一条命令

银河国际手机版最新 3

那边加了三个标记,正是ofag=sync,加完这么些标识之后,我们开采访编写磁盘的速度下落了,写2G的文件花了8秒,多用了四分之一的时光。那便是文件系统缓存的成效,文件系统缓存大大扩展了主机的性质。

咱俩以后回来在此以前特别标题,LGW凯雷德进度写redo
log 会不会用到缓存呢?我们选拔strace
–p命令来追踪LGWPRADO进程,为便利观看大家增添一组新的redo日志组并张开切换。

银河国际手机版最新 4

通过深入分析TRACE消息大家开掘,LGW福睿斯进度对online
redo log展开使用了o_sync标示,该标示表示一直写入存款和储蓄设备。

TRUSS/TUSC/STRACE是什么?银河国际手机版最新 5

上边小编引用一下TRUSS的合法解释,TUSC与STRACE工具作用为主均等。

银河国际手机版最新 6

它是一个在系统层处理复杂难题十二分有效的工具,用来追踪一个进度的种类调用可能时域信号爆发的动静。适用于不一致的体系遭受。

它们适用于差异的Unix景况:

•      Truss :
AIX,Solaris

•     
Tusc  :HP-Unix(需单独安装)

•     
Strace:Linux

Truss常用参数介绍

参数 介绍
-a 显示在每一执行系统调用中传递的参数字符串。
-c 计数跟踪系统调用、故障和信号而不是逐行显示跟踪结果。跟踪命令终止或 truss 中断时生成摘要报告。若还使用 -f 标志,计数包含所有跟踪的系统调用、故障和子进程信号。
-d 每行输出包含时间戳记。时间从跟踪开始以每秒显示。跟踪输出的第一行显示测量单个时间戳记的基本时间。缺省不显示时间戳记。
-D 每行输出显示增量时间。增量时间表示从由该线程引起的最后报告事件起计时引起事件的 LWP 的逝去时间。缺省不显示增量时间。
-e 显示在每一执行系统调用中传递的环境字符串。
-f 跟在 fork 系统调用产生的所有子进程之后,并包含跟踪输出中的信号、故障和系统调用。 通常,仅跟踪第一级命令和进程。如果指定 -f 标志,进程标识与每行跟踪输出一起显示哪个进程执行系统调用或接收信号。
-l 显示有关 LWP 进程的标识(线程标识)及 truss 输出。输出中缺省不显示 LWP 标识。
-o 指定用于跟踪输出的文件。缺省时输出指向标准错误。
-p 将参数作为一列现存进程的进程标识而不是要执行的命令解释到 truss。 倘若进程用户标识或组标识与用户的用户标识或组标识匹配或者用户是特权用户,truss 控制并开始跟踪每个进程。

Tusc常用参数介绍

银河国际手机版最新 7

Strace常用参数介绍

参数 介绍
-c 统计每一系统调用的所执行的时间,次数和出错的次数等.
-d 输出strace关于标准错误的调试信息.
-f 跟踪由fork调用所产生的子进程. 
-ff 如果提供-o filename,则所有进程的跟踪结果输出到相应的filename.pid中,pid是各进程的进程号.
-F 尝试跟踪vfork调用.在-f时,vfork不被跟踪.
-h 输出简要的帮助信息.
-i 输出系统调用的入口指针.
-q 禁止输出关于脱离的消息.
-r 打印出相对时间关于,,每一个系统调用.
-t 在输出中的每一行前加上时间信息.
-tt 在输出中的每一行前加上时间信息,微秒级.
-ttt 微秒级输出,以秒了表示时间.
-T 显示每一调用所耗的时间.
-v 输出所有的系统调用.一些调用关于环境变量,状态,输入输出等调用由于使用频繁,默认不输出.
-V 输出strace的版本信息.

上面大家看三个轻松的应用示例:

第一是使用strace
–tt date来追踪date命令,使用-tt参数在每一行的时装上助长岁月音信,到微秒等级。

银河国际手机版最新 8

除此以外三个演示正是选拔strace
–d cate命令总结全部函数调用的次数及总时间攻克,这些对于命令追踪的解析总结极度管用

银河国际手机版最新 9

一个SQLPLUS连接慢的标题银河国际手机版最新 10

接下去大家来看贰个案例,这些案例是多少个SQLPLUS连接慢的主题材料,AIX
7.1的操作系统,11.2.0.3
两节点RAC数据库,检查硬件的安装情状尚未难点,重新配置情状变量也不能够一举成功难点。

对此这种难题,大家首先要开展局地排查,排除有的大概:

1、 
大家看一下使用sqlplus/
as sysdba慢比极快,经过申报,sqlplus
/ as sysdba也慢,连接时间要5秒左右。

2、 
远程连接慢相当的慢?

  1. 本地利用远程连接慢相当慢 
    sqplus username/passwdd@tns 澄清:
    测验也慢,慢约5分钟左右。

  2. 其它主机使用远程慢极快?澄清:同样也慢,
    慢约5分钟左右。

如上剖断申明这么些延续慢并非一定和Listener有关,同有的时候候也能够解除互联网难点引起的监听连接慢,所以先要求缓和sqlplus
/ as sysdba 慢的难点,一点都不小只怕在ORACLE数据库的接连管理体制方面。

我们运用TRUSS命令去追踪盯梢sqlplus
/ as sysdba连接命令,开采不断出新sigpromask、_sigaction及thread_setmystate函数调用。

那那几个函数代表怎么着?

银河国际手机版最新 11

后来对那些函数进行解析,其主要意义如下:

We see in that truss
that main reason weare waiting is that the forked thread is looping on
some signal handlingmodification :

 They impact the way
memory isconfigured (read/write protected, guard pages…)

经过上述解析发掘,连接的时候慢与内部存款和储蓄器页的分配有关,通过进一步检查内部存款和储蓄器参数开掘,pre_page_sga设置为true。接下来通过测量试验能够复出那么些难点,实际验证的确如此:设置为true,难点再次出现,设置为false,难点未有,并且开掘那些参数为True的景观下,SGA内存越菲尼克斯接变慢的越显明。

这种表现不荒谬化啊?

经过询问MOS文书档案Notes
289585.1
,大家领会知这么些行为是健康。

银河国际手机版最新 12

精细入微本群众号,回复:prelection,你可以找到本文的相干录像文书档案。

银河国际手机版最新 13

连锁阅读:

DBA生存警示:系统存款和储蓄级误删除案例及防卫建议

故障检查判断:DRM导致Oracle
RAC节点Hang住

故障分析:数据库一致性关闭缓慢难点检查判断

深切内核:监听器的劳作规律与故障检查判断剖判

财富下载

无所不至大伙儿号:数据和云(OraNews)回恢复关贸总协定缔约国地位键字获取

‘2017DTC’,2017DTC大会PPT

‘DBALIFE’,“DBA的一天”海报

‘DBA04’,DBA手记4精湛篇章电子书

‘RACV1’, RAC种类课程录像及ppt

‘122ARCH’,Oracle 12.2系统布局图

‘2017OOW’,Oracle OpenWorld资料

‘PRELECTION’,大讲堂教师课程资料

银河国际手机版最新 14

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注