redo size消耗情况

[复制链接]
查看11 | 回复7 | 2021-1-23 14:14:07 | 显示全部楼层 |阅读模式
求教,已知一条insert语句的SQL_ID,怎么去判断他insert消耗了多少redo size的

回复

使用道具 举报

千问 | 2021-1-23 14:14:07 | 显示全部楼层
老盖的那本书上有, DBA入门进阶与诊断案例
P310页开始。
7.7 产生多少redo
1 SQL plus中使用autotrace 功能, set autotrace trace stat
2 通过v$mystat查询
3 通过v$sysstat查询
自己慢慢看吧。

回复

使用道具 举报

千问 | 2021-1-23 14:14:07 | 显示全部楼层
还是autot吧
或者sqltrpt看看吧,记得有redo。
v$mystat和v$sysstat分别是会话和系统范围的,没有单个SQL的。

回复

使用道具 举报

千问 | 2021-1-23 14:14:07 | 显示全部楼层
ForrestAgain 发表于 2016-5-8 22:43
老盖的那本书上有, DBA入门进阶与诊断案例
P310页开始。

好的谢谢!




回复

使用道具 举报

千问 | 2021-1-23 14:14:07 | 显示全部楼层
sqysl 发表于 2016-5-9 13:56
还是autot吧
或者sqltrpt看看吧,记得有redo。
v$mystat和v$sysstat分别是会话和系统范围的,没有单个SQL ...

明白 谢谢!




回复

使用道具 举报

千问 | 2021-1-23 14:14:07 | 显示全部楼层
select s.sid, s.serial#, n.name, ss.value
from v$sesstat ss, v$statname n, v$session s, v$sqlarea sq
where n.name in (
'undo change vector size',
'redo size')
and ss.statistic# = n.statistic#
and s.sql_address = sq.address
and ss.sid = s.sid
and sq.sql_id = '&sql_id'
order by s.sid,n.name desc, ss.value desc;

回复

使用道具 举报

千问 | 2021-1-23 14:14:07 | 显示全部楼层
alibull 发表于 2016-5-9 16:59
select s.sid, s.serial#, n.name, ss.value
from v$sesstat ss, v$statname n, v$session s, v$sqlarea s ...

这么查应该还是有问题。
1、v$sesstat中的统计信息值是会话累积的,并不是针对单个SQL的统计信息。
2、"s.sql_address = sq.address"是关联会话当前SQL和输入SQL,当会话当前SQL和输入SQL并不一致时,就不会有结果,这种几率应该很高的。
回复

使用道具 举报

千问 | 2021-1-23 14:14:07 | 显示全部楼层
sqysl 发表于 2016-5-9 18:40
这么查应该还是有问题。
1、v$sesstat中的统计信息值是会话累积的,并不是针对单个SQL的统计信息。
2、 ...

确实。多谢指正!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行