前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【DB笔试面试156】在Oracle中,如何查询数据库系统或当前会话的Redo和Undo的生成量?

【DB笔试面试156】在Oracle中,如何查询数据库系统或当前会话的Redo和Undo的生成量?

作者头像
AiDBA宝典
发布2019-09-29 15:31:17
1.3K0
发布2019-09-29 15:31:17
举报
文章被收录于专栏:小麦苗的DB宝专栏

题目部分

在Oracle中,如何查询数据库系统或当前会话的Redo和Undo的生成量?

答案部分

答案:反映Undo、Redo生成量的统计指标分别是:

l Redo:redo size

l Undo:undo change vector size

1、查询数据库系统Redo生成量,可以通过V$SYSSTAT视图查询,如下所示:

代码语言:javascript
复制
SELECT NAME,
       VALUE
FROM   V$SYSSTAT
WHERE  NAME = 'redo size';

2、查看当前会话的Redo生成量,可以通过V$MYSTAT或V$SESSTAT视图查询,如下所示:

代码语言:javascript
复制
CREATE OR REPLACE VIEW VW_REDO_SIZE_LHR AS 
SELECT VALUE REDO_SIZE
FROM   V$MYSTAT   MY,
       V$STATNAME  ST
WHERE  MY.STATISTIC# =ST.STATISTIC#
AND    ST.NAME = 'redo size';

可以创建视图来同时查询当前会话Redo和Undo的生成量,如下所示:

代码语言:javascript
复制
CREATE OR REPLACE VIEW VW_REDO_UNDO_LHR AS 
SELECT (SELECT NB.VALUE
          FROM V$MYSTAT NB, V$STATNAME ST
         WHERE NB.STATISTIC# = ST.STATISTIC#
           AND ST.NAME = 'redo size') REDO,
       (SELECT NB.VALUE
          FROM V$MYSTAT NB, V$STATNAME ST
         WHERE NB.STATISTIC# = ST.STATISTIC#
           AND ST.NAME = 'undo change vector size') UNDO
  FROM DUAL;

& 说明:

有关Redo和Undo的查询实验更多相关内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2125815/

本文选自《Oracle程序员面试笔试宝典》,作者:李华荣。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-05-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DB宝 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档