zoukankan      html  css  js  c++  java
  • 数据库 | Oracle数据库查表空间使用情况

    平时在使用Oracle的时候,如果业务中的数据量激增、数据量变大,很有可能就会有表空间不足的情况,需要重点关注。今天我们分享下如何查看表空间的使用情况。

    不要等到Oracle磁盘空间满了,再去查表空间使用情况

    一、如何查看使用状况

    我们废话不说,先直接贴上可以查询表空间使用状况的SQL

    SELECT 
    a.tablespace_name 表空间名称,
    total 总计,
    total - free 已使用,
    free 空闲,
    round((total - free) / total * 100, 2) 使用占比
    FROM (
    SELECT tablespace_name
    , round(SUM(bytes) / 1024 / 1024) AS total
    FROM dba_data_files
    GROUP BY tablespace_name
    ) a
    LEFT JOIN (
    SELECT tablespace_name
    , round(SUM(bytes) / 1024 / 1024) AS free
    FROM dba_free_space
    GROUP BY tablespace_name
    ) b
    ON a.tablespace_name = b.tablespace_name
    ORDER BY (total - free) / total DESC;

    查询结果如下,这样就可以清晰的看到数据库的具体使用情况啦。

    不要等到Oracle磁盘空间满了,再去查表空间使用情况

    二、实用查询

    1、查看表空间的名称及大小

    SELECT t.tablespace_name
    , round(SUM(bytes / (1024 * 1024)), 0) AS ts_size
    FROM dba_tablespaces t, dba_data_files d
    WHERE t.tablespace_name = d.tablespace_name
    GROUP BY t.tablespace_name;

    2、查看表空间物理文件的名称及大小

    SELECT tablespace_name, 
    file_id,
    file_name,
    round(bytes / (1024 * 1024), 0) total_space
    FROM dba_data_files
    ORDER BY tablespace_name;

    3、查看数据库库对象

    SELECT owner, object_type, status, COUNT(*) AS count
    FROM all_objects
    GROUP BY owner, object_type, status;

    4、查看数据库的版本

    SELECT version
    FROM product_component_version
    WHERE substr(product, 1, 6) = 'Oracle';

    5、查看数据库的创建日期和归档方式

    SELECT created, log_mode, log_mode
    FROM v $database;

    6、查看回滚段名称及大小

    SELECT segment_name, tablespace_name, r.status, initial_extent / 1024 AS initialextent
    , next_extent / 1024 AS nextextent, max_extents, v.curext AS curextent
    FROM dba_rollback_segs r, v $rollstat AS v
    WHERE r.segment_id = v.usn(+)
    ORDER BY segment_name;

    7、查看控制文件

    SELECT NAME
    FROM v $controlfile;

    8、查看日志文件

    SELECT MEMBER
    FROM v $logfile;

  • 相关阅读:
    数据结构 字符串的长度
    滚动条
    git push 一直卡在 writing objects 然后 就提交失败 提示:unexpected-disconnect-while-reading-sideband-packet
    vue中的防抖和节流
    html5中output元素详解
    手写 apply call bind 三个方法
    js中的陷阱!!!
    display:inline-block元素之间空隙的产生原因和解决办法
    git push到Gitee的时候上传不成功,可能是本地文件夹与远程仓库不同步
    axios没有实现jsonp这个功能,基于axios自己扩展一个
  • 原文地址:https://www.cnblogs.com/wyf0518/p/11319868.html
Copyright © 2011-2022 走看看