我的编程空间,编程开发者的网络收藏夹
学习永远不晚

oracle redo过度诊断是怎样的

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

oracle redo过度诊断是怎样的

oracle redo过度诊断是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

一、诊断过度redo

要找到生成大量重做的会话,您可以使用以下任何一种方法。这两种方法都检查生成的撤销量。
当一个事务生成撤销,它将自动生成重做。


当需要检查生成大量的程序时,使用第一个查询。当这些程序激活多个事务时重做。
后者查询,可以用来发现哪些特定事务正在生成重做。


1)法一 (针对某程序累计redo生成量)

查询 V$SESS_IO ,此视图包含指示的列BLOCK_CHANGES。
该会话更改了多少块。比较高的值表明,会话生成大量重做.

SELECT s.sid, s.serial#, s.username, s.program,
i.block_changes
FROM v$session s, v$sess_io i
WHERE s.sid = i.sid
ORDER BY 5 desc, 1, 2, 3, 4;

SID SERIAL# USERNAME PROGRAM BLOCK_CHANGES
---------- ---------- ------------------------------ ------------------------------------------------ -------------
331 393 SYS sqlplus@orastb.bonc.com.cn (TNS V1-V3) 210481
241 1 oracle@orastb.bonc.com.cn (SMON) 65308


2)法二 (针对正在运行事务redo生成量)
查询V$TRANSACTION.此视图包含有关事务信息的撤销块和撤消记录。(在 USED_UBLK and USED_UREC 中)

SELECT s.sid, s.serial#, s.username, s.program, 
t.used_ublk, t.used_urec
FROM v$session s, v$transaction t
WHERE s.taddr = t.addr
ORDER BY 5 desc, 6 desc, 1, 2, 3, 4;

SID SERIAL# USERNAME PROGRAM USED_UBLK USED_UREC
---------- ---------- ------------------------------ --------------------------------------- ----- -----
1 227 ANDY sqlplus@orastb.bonc.com.cn (TNS V1-V3) 37 2044

二、如何诊断过度的重做生成。


高 redo 通常分为两类:
1。在一天的特定时间内。
2。存档日志的突然增加。
在这两种情况下,首先要检查的是数据库级别上的任何修改(修改任何参数、执行的任何维护操作、..)和应用程序级别(部署新应用程序,修改代码,增加用户,..)。
要知道高重做的确切原因,我们需要关于重做活动的信息和负载的详细信息。以下信息需要收集在高redo做生成期间。

1]要知道日志切换的趋势,可以使用以下查询。
SQL> alter session set NLS_DATE_FORMAT='DD-MON-YYYY HH24:MI:SS';

SQL>select trunc(first_time, 'HH') , count(*)
from v$loghist
group by trunc(first_time, 'HH') 
order by trunc(first_time, 'HH');

TRUNC(FIRST_TIME,'HH COUNT(*)
-------------------- ----------
29-MAY-2008 13:00:00 126
29-MAY-2008 14:00:00 135 <- Indicate 135 log switches from 2-3 PM.
29-MAY-2008 15:00:00 112

-- 运行以下查询,了解在任何特定时间生成高重做的会话
col program for a10
col username for a10
select to_char(sysdate,'hh34:mi'), username, program , a.sid, a.serial#, b.name, c.value
from v$session a, v$statname b, v$sesstat c
where b.STATISTIC# =c.STATISTIC#
and c.sid=a.sid and b.name like 'redo size%'
order by value;

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

oracle redo过度诊断是怎样的

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Thread Dump和Java应用诊断是怎样的

本篇文章给大家分享的是有关Thread Dump和Java应用诊断是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1,Solaris OS-’’ (Control-Bac
2023-06-03

Oracle存储过程是怎样的

这篇文章主要介绍“Oracle存储过程是怎样的”,在日常操作中,相信很多人在Oracle存储过程是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Oracle存储过程是怎样的”的疑惑有所帮助!接下来,请跟
2023-06-17

Linux内核处理中断的过程是怎样的

Linux内核处理中断的过程是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。中断是现代 CPU 工作方式中重要的部分。例如:当你每次在键盘上按下一个按键后,CPU 会
2023-06-28

Linux oracle 9i安装过程是怎样的

这期内容当中小编将会给大家带来有关Linux oracle 9i安装过程是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。  下面进行Oracle安装前期准备中的第一点,完成Linux的安装.在安装中
2023-06-10

oracle自动统计信息时间的修改过程是怎样的

本篇文章为大家展示了oracle自动统计信息时间的修改过程是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。今天是2022年1月10日今天值夜班,同事让给优化一个sql,优化完成后,顺便看了下新
2023-06-26

编程热搜

目录