oracle数据库状态查询(表空间,表空间利用率,是否自动扩展,IOPS,MBPS,数据库总大小)

排除了('SYSAUX', 'USERS', 'SYSTEM','UNDOTBS1')

结果示例



-- 查询用户自定义表空间的使用信息
WITH user_tablespaces AS (
SELECT DISTINCT tablespace_name
FROM dba_segments
WHERE tablespace_name NOT IN ('SYSAUX', 'USERS', 'SYSTEM','UNDOTBS1')
),
tbs_used_size AS (
SELECT TRUNC(SUM(bytes) / 1024 / 1024 / 1024, 2) AS used_size_gb, tablespace_name
FROM dba_segments
WHERE tablespace_name IN (SELECT tablespace_name FROM user_tablespaces)
GROUP BY tablespace_name
),
tbs_size AS (
SELECT tablespace_name AS name,
TRUNC(SUM(bytes) / 1024 / 1024 / 1024, 2) AS total_size_gb
FROM dba_data_files
WHERE tablespace_name IN (SELECT tablespace_name FROM user_tablespaces)
GROUP BY tablespace_name
),
tbs_autoextensible AS (
SELECT tablespace_name AS name,
MAX(autoextensible) AS auto_extensible
FROM dba_data_files
WHERE tablespace_name IN (SELECT tablespace_name FROM user_tablespaces)
GROUP BY tablespace_name
)
SELECT a.name "表空间名",
a.total_size_gb || ' GB' "表空间大小(GB)",
NVL(b.used_size_gb, 0) || ' GB' "表空间使用的大小(GB)",
TRUNC(NVL(b.used_size_gb, 0) / a.total_size_gb * 100, 2) || '%' "表空间使用率(%)",
a.name || ':' || TRUNC(NVL(b.used_size_gb, 0) / a.total_size_gb * 100, 2) || '% ' ||
CASE WHEN c.auto_extensible = 'YES' THEN '自动扩展' ELSE '非自动扩展' END AS summary
FROM tbs_size a
LEFT JOIN tbs_used_size b ON (a.name = b.tablespace_name)
LEFT JOIN tbs_autoextensible c ON (a.name = c.name); -- 查询 IOPS 和 MBPS 以及数据库总大小
WITH io_stats AS (
SELECT
(SELECT VALUE FROM V$SYSSTAT WHERE NAME = 'physical reads') AS physical_reads,
(SELECT VALUE FROM V$SYSSTAT WHERE NAME = 'physical writes') AS physical_writes,
(SELECT VALUE FROM V$SYSSTAT WHERE NAME = 'physical read total bytes') AS read_bytes,
(SELECT VALUE FROM V$SYSSTAT WHERE NAME = 'physical write total bytes') AS write_bytes
FROM dual
),
time_stats AS (
SELECT
(SYSDATE - startup_time) * 86400 AS uptime_seconds
FROM V$INSTANCE
),
iops_mbps AS (
SELECT
ROUND((physical_reads + physical_writes) / uptime_seconds, 2) AS iops,
ROUND((read_bytes + write_bytes) / (uptime_seconds * 1024 * 1024), 2) AS mbps
FROM io_stats, time_stats
),
total_size AS (
SELECT
TRUNC(SUM(bytes) / 1024 / 1024 / 1024, 2) AS total_gb
FROM dba_data_files
)
SELECT 'IOPS' AS Metric, TO_CHAR(iops) || ' operations/sec' AS Value
FROM iops_mbps
UNION ALL
SELECT 'MBPS', TO_CHAR(mbps) || ' MB/sec'
FROM iops_mbps
UNION ALL
SELECT '数据库总大小', TO_CHAR(total_gb) || ' GB'
FROM total_size;

oracle数据库状态查询的更多相关文章

  1. oracle数据库常用查询一

    oracle数据库常用查询一 sqlplus / as sysdba; 或sqlplus sys/密码 as sysdba;两者都是以sys登录.conn scott/tiger@orcl; conn ...

  2. ORACLE数据库常用查询二

    ORACLE数据库常用查询 1.查看表空间对应数据文件情况: SQL MB,AUTOEXTENSIBLE FROM DBA_DATA_FILES; TABLESPACE_NAME FILE_NAME ...

  3. Oracle 数据库分页查询的三种方法

    一.Oracle 数据库分页查询的三种方法 1.简介 不能对 rownum 使用 >(大于或等于 1 的数值).>=(大于 1 的数值).=(不等于 1 的数值),否则无结果.所以直接用 ...

  4. Oracle 数据库特殊查询总结

    1. 查询本节点及本节点以下的所有节点: select * from table1 c start with c.p_id='0000000' connect by prior c.id=c.p_id ...

  5. Oracle数据库,查询语句、内置函数

    一.数据库的查询语句: 1.查询整个表: select * from 表名 例: 2.通过条件查询某一行数据: select * from 表名 where 字段名 例: 3.某一列数据去重查询: s ...

  6. 从Oracle数据库中查询前几个月数据时需要注意的一些问题

    在最近的一个项目中,有一个需求就是要查询数据库中前几个月的历史数据,但是由于自己考虑不全面造成了程序的bug,现在将这一块好好作一个总结,希望以后不再犯这种很低级的错误,首先贴出查询中用到的一个子函数 ...

  7. 关于sql server远程访问Oracle数据库 OpenQuery查询返回多条数据的问题

    在Sql Server远程访问Oracle 中的数据库表时: 远程语法通常为: select * from OpenQuery(Oracle链接服务器名称,‘查询语句’) eg: select * f ...

  8. mysql、sql server、oracle数据库分页查询及分析(操作手册)

    1.mysql分页查询 方式1: select * from table order by id limit m, n; 该语句的意思为,查询m+n条记录,去掉前m条,返回后n条记录.无疑该查询能够实 ...

  9. oracle数据库字符集查询

    1>数据库服务器字符集 select * from nls_database_parameters,其来源于props$,是表示数据库的字符集. 查询结果如下 NLS_LANGUAGE AMER ...

  10. thinkphp 3.2链接Oracle数据库,查询数据

    ennnn,换工作了,开始用新的东西了,最近就是调用nc接口,数据库是Oracle,首先先把数据查出来,这个比较简单. 在网上看的其他的方法都是改数据库配置文件,然后需要修改tp核心的一个类文件,比较 ...

随机推荐

  1. AutoLayout与UIbutton

    1.UIButton贴近右边,高度固定,宽度跟随标题变化 class TestButton: UIButton { } class ViewController: UIViewController { ...

  2. Codes 重新定义 SaaS 模式的研发项目管理平台开源版 4.5.3 发布

    一:简介 Codes 重新定义 SaaS 模式 = 云端认证 + 程序及数据本地安装 + 不限功能 + 30 人免费  Codes  是一个 高效.简洁.轻量的一站式研发项目管理平台.包含需求管理,任 ...

  3. drawio中添加数学公式

    1.drawio简介 drawio是一款免费开源的流程图绘制软件,由于软件免费,而且模块也很丰富,我比较喜欢用它. 软件下载地址:https://github.com/jgraph/drawio-de ...

  4. CF1827

    CF1827 A. Counting Orders 简单计数. 两个都排序,双指针维护一下 a[i] 在 b[p] 的位置(a[i] <= b[p]). 那么方案数 \(\times (p - ...

  5. 无法删除此对象,因为未在 ObjectStateManager 中找到它。

    无法删除此对象,因为未在 ObjectStateManager 中找到它. 不能直接删除实体类, 用Service提供的: void Delete(long[] ids); void Delete(l ...

  6. C#.NET 不可见字符DEL

    不可见字符DEL .空格.替换掉. 签名时遇到了客户端发过来的数据包含一个DEL.Notepad++ 里显示为DEL. 包含这个字符签名给上游,就会报错:签名错误. 得想办法replace掉.目前方案 ...

  7. 夜莺官方文档优化第一弹:手把手教你部署和架构讲解,消灭所有部署失败的 case!干!

    前置说明 各种环境的选型建议 Docker compose 方式:仅仅用于简单测试,不推荐在生产环境使用 Docker compose,升级起来挺麻烦的,除非你对 Docker compose 真的很 ...

  8. C程序函数调用&系统调用

    理解程序的执行 我们要知道CPU可以自由地访问寄存器.内存.另外,程序是由操作系统执行的,所以操作系统能够控制程序的所有执行情况,限制程序的行为. 程序地执行过程: 程序是一个二进制文件,包含程序的代 ...

  9. mysql ON DUPLICATE KEY UPDATE 演示

    <e>查询:INSERT INTO member_test(mem_no,flag)VALUE('111','1') 错误代码: 1062Duplicate entry '111' for ...

  10. elasticSearch RangeQuery范围查询from to的理解

    elasticSearch RangeQuery范围查询from to的理解 Elasticsearch Guide 选择版本号来查询对应的文档内容:https://www.elastic.co/gu ...