zoukankan      html  css  js  c++  java
  • 小知识:统计Oracle的日归档量

    首先这对于Oracle DBA来说是个初级问题,即使不熟悉的初级DBA也可以快速在网上搜索到现成的SQL语句。
    网上搜到的查询SQL基本类似这样的逻辑:

    select trunc(completion_time) "Date", count(*) cnt, round(sum(block_size * blocks / 1024 / 1024), 1) "MB"
    from v$archived_log
    group by trunc(completion_time) 
    order by 1;
    

    如果我们是在DG环境中,主库肯定配置了其他的log_archive_dest_N,如果还是使用上面这个统计SQL就很可能出现大的讹误,这类场景下我们要加入限制条件dest_id=1,即正常应该只统计本地归档量即可:

    select trunc(completion_time) "Date", count(*) cnt, round(sum(block_size * blocks / 1024 / 1024), 1) "MB"
    from v$archived_log
    where dest_id = 1  /* 限制条件 dest_id = 1 */
    group by trunc(completion_time) 
    order by 1;
    

    另外看见过一些初级DBA会在统计RAC环境的日归档量时,想当然的将v$archived_log写成gv$archived_log,导致统计结果出现double放大的讹误。
    这类小知识点也可以作为一道基础的DBA面试题,考验下候选人的基本功。
    最后也建议广大DBA,像这类简单查询,还是不要选择复制网上的,自己对某个视图或其中的字段含义有疑问的,建议直接查阅官方文档reference章节:

  • 相关阅读:
    Bootstrap表格的使用
    [JS练习] 瀑布流照片墙
    [C#基础] 委托
    [C#基础] 泛型
    [C#基础] 继承
    [C#基础] 类
    [C#基础] 数据类型
    Unity获取手机的电量时间
    C#网络通信Socket详解
    记C#一次服务器搭建和数据库应用
  • 原文地址:https://www.cnblogs.com/jyzhao/p/12977088.html
Copyright © 2011-2022 走看看