Oracle数据库-重点信息查询方法

文章目录

  • 一、数据库信息及查询方法
    • 1.1是否为RAC
    • 1.2 数据库存储容量大小
    • 1.3 在线会话数
    • 1.4 最大分区数
    • 1.5 最大存储过程行数
    • 1.6 单表最大行数
    • 1.7 最大单表大小
    • 1.8 表总数量
    • 1.9 无主键表的数量
    • 1.10 字段数超过200的宽表
    • 1.11 关注CPU耗时高的SQL

一、数据库信息及查询方法

1.1是否为RAC

结果为true 则为RAC
col RAC for a20
col value for a30

select name RAC,value from v$parameter where name='cluster_database';

1.2 数据库存储容量大小

数据库分配的空间大小

select sum(bytes)/1024/1024/1024 datafile_size_GB from dba_data_files;

1.3 在线会话数

各实例的在线会话数

with tmp_sess
as
(select SNAP_ID,INSTANCE_NUMBER,BEGINTIME,ENDTIME,METRIC_NAME,MAXVALfrom (select SNAP_ID,INSTANCE_NUMBER,TO_CHAR(BEGIN_TIME,'YYYY-MM-DD HH24:MI') BEGINTIME,
TO CHAR(END_TIME,'YYYY-MM-DD HH24:MI') ENDTIME,
METRIC_NAME,METRIC_UNIT,MAXVAL
from dba_hist_SYSMETRIC_SUMMARY
where METRIC_NAME in ('Session Count')
order by MAXVAL desc)
where rownum<=1)
select SNAP_ID,INSTANCE_NUMBER,BEGINTIME,ENDTIME,METRIC_NAME,MAXVAL from tmp_sess union all
select SNAP_ID,INSTANCE_NUMBER,BEGINTIME,ENDTIME,METRIC_NAME,MAXVAL from(select h.SNAP,h.INSTANCE_NUMBER,TO_CHAR(BEGIN_TIME,'YYYY-MM-DD HH24:MI')BEGINTIME,
from dba_hist_SYSMETRIC_SUMMARY h,tmp_sess t where h.SNAP_ID=t.SNAP_ID and h.instance_number<>t.instance_number
and h.METRIC_NAME in('Session Count')
order by MAXVAL desc
)
where rownum<=1;

在同一个快照采样期间,数据库在线会话数

select SNAP_ID,BEGINTIME,ENDTIME,METRIC_NAME,sum(maxval)
from(
with tmp_sess
as
(select SNAP_ID,INSTACE_NUMBER,BEGINTIME,ENDTIME,METRIC_NAME,MAXVALfrom(select SNAP_ID,INSTANCE_NUMBER,TO_CHAR(BEGIN_TIME,'YYYY-MM-DD HH24:MI')BEGINTIME,
TO_CHAR(END_TIME,'YYYY-MM-DD HH24:MI')ENDTIME,
METRIC_NAME,METRIC_UNIT,MAXVAL
from dba_hist_SYSMETRIC_SUMMARY
where METRIC_NAME in('Session Count')
order by MAXVAL desc)where rownum<=1)
select SNAP_ID,INSTACE_NUMBER,BEGINTIME,ENDTIME,METRIC_NAME,MAXVAL from tmp_sess union all
select SNAP_ID,INSTACE_NUMBER,BEGINTIME,ENDTIME,METRIC_NAME,MAXVAL from(
select h.SNAP_ID,h.INSTACE_NUMBER,TO_CHAR(BEGIN_TIME,'YYYY-MM-DD HH24:MI') BEGINTIME, TO_CHAR(ENDTIME,'YYYY-MM-DD HH24:MI') ENDTIME,h.METRIC_NAME,h.MAXVAL from dba_hist_SYSMETRIC_SUMMARY h,tmp_sess t where h.SNAP_ID=t.SNAP_ID and h.instance_number<>t.instance_number
and h.METRIC_NAME in('Session Count')
order by MAXVAL desc
)
where rownum<=1
)group by SNAP_ID,BEGINTIME,ENDTIME,METRIC_NAME;

1.4 最大分区数

用户表中分区数最多的分区

col owner for a30
col table_name for a30
select * from
(select OWNER,TABLE_NAME,PARTITIONING_TYPE,PARTITIN_COUNT from dba_part_tables where owner not in('SYS','SYSTEM','XS$NULL','OJVMSYS','LBACSYC','OUTLN','SYS$UMF','DBSNMP','APPQOSSYS','DBSFWUSER','GGSYS','ANONYMOUS','EXFSYS','SYSMAN','CTXSYS','DVF','DVSYS','GSMADMIN_INTERNAL','MDSYS','OLAPSYS','XDB','WMSYS','GSMCATUSER','MDDATA','REMOTE_SCHERDULER_AGENT','SQLTXPLAIN','SYSBACKUP','GSMUSER','GSMROOTUSER','SYSRAC','SI_INFORMIN_SCHEMA','AUDSYS','DIP','ORDPLUGINS','ORDDATA','SYSKM','ORACLE_OCM','ORDSYS','SYSDG','APEX_220200','ORDS_METADATA')
order by PARTITION_COUNT desc)where rownum=1;

1.5 最大存储过程行数

col owner for a30
col name for a30
select owner,sum(max_lines) from (select * from(select owner,name,type,max(line) max_lines from dba_source where owner not in ('SYS','SYSTEM','XS$NULL','OJVMSYS','LBACSYC','OUTLN','SYS$UMF','DBSNMP','APPQOSSYS','DBSFWUSER','GGSYS','ANONYMOUS','EXFSYS','SYSMAN','CTXSYS','DVF','DVSYS','GSMADMIN_INTERNAL','MDSYS','OLAPSYS','XDB','WMSYS','GSMCATUSER','MDDATA','REMOTE_SCHERDULER_AGENT','SQLTXPLAIN','SYSBACKUP','GSMUSER','GSMROOTUSER','SYSRAC','SI_INFORMIN_SCHEMA','AUDSYS','DIP','ORDPLUGINS','ORDDATA','SYSKM','ORACLE_OCM','ORDSYS','SYSDG','APEX_220200','ORDS_METADATA')
group by owner,name,type
order by max_lines desc
))group by owner;

或者指定schema

select owner,sum(max_lines)
from (select * from (select owner,name,type,max(line)maxlines
from dba_source where owner in 'CC' group by owner,name,type
order by max_lines desc))group by owner;

1.6 单表最大行数

select * from(select owner,table_name,NUM_ROWS,to_char(LAST_ANALYZED,'yyyy-mm-dd hh24:mi:ss') LAST_ANALYZED
from dba_tables
where LAST_ANALYZED is not null
and owner not in('SYS','SYSTEM','XS$NULL','OJVMSYS','LBACSYC','OUTLN','SYS$UMF','DBSNMP','APPQOSSYS','DBSFWUSER','GGSYS','ANONYMOUS','EXFSYS','SYSMAN','CTXSYS','DVF','DVSYS','GSMADMIN_INTERNAL','MDSYS','OLAPSYS','XDB','WMSYS','GSMCATUSER','MDDATA','REMOTE_SCHERDULER_AGENT','SQLTXPLAIN','SYSBACKUP','GSMUSER','GSMROOTUSER','SYSRAC','SI_INFORMIN_SCHEMA','AUDSYS','DIP','ORDPLUGINS','ORDDATA','SYSKM','ORACLE_OCM','ORDSYS','SYSDG','APEX_220200','ORDS_METADATA')
order by NUM_ROWS desc
)where rownum<=1;

1.7 最大单表大小

col SEGEMENT_NAME for a35
select * from(
select owner,segement_name,sum(bytes)/1024/1024/1024 size_gb
from dba_segements
where segement_type='TABLE'
and owner not in ('SYS','SYSTEM','XS$NULL','OJVMSYS','LBACSYC','OUTLN','SYS$UMF','DBSNMP','APPQOSSYS','DBSFWUSER','GGSYS','ANONYMOUS','EXFSYS','SYSMAN','CTXSYS','DVF','DVSYS','GSMADMIN_INTERNAL','MDSYS','OLAPSYS','XDB','WMSYS','GSMCATUSER','MDDATA','REMOTE_SCHERDULER_AGENT','SQLTXPLAIN','SYSBACKUP','GSMUSER','GSMROOTUSER','SYSRAC','SI_INFORMIN_SCHEMA','AUDSYS','DIP','ORDPLUGINS','ORDDATA','SYSKM','ORACLE_OCM','ORDSYS','SYSDG','APEX_220200','ORDS_METADATA')
group by owner,segement_name
order by size_gb desc
)where rownum<=1;

1.8 表总数量

select count(*) num_tables from dba_tables
where owner not in('SYS','SYSTEM','XS$NULL','OJVMSYS','LBACSYC','OUTLN','SYS$UMF','DBSNMP','APPQOSSYS','DBSFWUSER','GGSYS','ANONYMOUS','EXFSYS','SYSMAN','CTXSYS','DVF','DVSYS','GSMADMIN_INTERNAL','MDSYS','OLAPSYS','XDB','WMSYS','GSMCATUSER','MDDATA','REMOTE_SCHERDULER_AGENT','SQLTXPLAIN','SYSBACKUP','GSMUSER','GSMROOTUSER','SYSRAC','SI_INFORMIN_SCHEMA','AUDSYS','DIP','ORDPLUGINS','ORDDATA','SYSKM','ORACLE_OCM','ORDSYS','SYSDG','APEX_220200','ORDS_METADATA');

1.9 无主键表的数量

select count(*) table_count from(
select owner,table_name from dba_tables t
where owner not in('SYS','SYSTEM','XS$NULL','OJVMSYS','LBACSYC','OUTLN','SYS$UMF','DBSNMP','APPQOSSYS','DBSFWUSER','GGSYS','ANONYMOUS','EXFSYS','SYSMAN','CTXSYS','DVF','DVSYS','GSMADMIN_INTERNAL','MDSYS','OLAPSYS','XDB','WMSYS','GSMCATUSER','MDDATA','REMOTE_SCHERDULER_AGENT','SQLTXPLAIN','SYSBACKUP','GSMUSER','GSMROOTUSER','SYSRAC','SI_INFORMIN_SCHEMA','AUDSYS','DIP','ORDPLUGINS','ORDDATA','SYSKM','ORACLE_OCM','ORDSYS','SYSDG','APEX_220200','ORDS_METADATA')
and NOT EXISTS
(select table_name from dba_constraints c
where constraint_type='P'
and owner not in ('SYS','SYSTEM','XS$NULL','OJVMSYS','LBACSYC','OUTLN','SYS$UMF','DBSNMP','APPQOSSYS','DBSFWUSER','GGSYS','ANONYMOUS','EXFSYS','SYSMAN','CTXSYS','DVF','DVSYS','GSMADMIN_INTERNAL','MDSYS','OLAPSYS','XDB','WMSYS','GSMCATUSER','MDDATA','REMOTE_SCHERDULER_AGENT','SQLTXPLAIN','SYSBACKUP','GSMUSER','GSMROOTUSER','SYSRAC','SI_INFORMIN_SCHEMA','AUDSYS','DIP','ORDPLUGINS','ORDDATA','SYSKM','ORACLE_OCM','ORDSYS','SYSDG','APEX_220200','ORDS_METADATA')
and t.table_name=c.table_name and t.owner=c.owner) );

1.10 字段数超过200的宽表

select owner,table_name,count(COLUMN_NAME) column_count
frm dba_tab_columns
where owner not in ('SYS','SYSTEM','XS$NULL','OJVMSYS','LBACSYC','OUTLN','SYS$UMF','DBSNMP','APPQOSSYS','DBSFWUSER','GGSYS','ANONYMOUS','EXFSYS','SYSMAN','CTXSYS','DVF','DVSYS','GSMADMIN_INTERNAL','MDSYS','OLAPSYS','XDB','WMSYS','GSMCATUSER','MDDATA','REMOTE_SCHERDULER_AGENT','SQLTXPLAIN','SYSBACKUP','GSMUSER','GSMROOTUSER','SYSRAC','SI_INFORMIN_SCHEMA','AUDSYS','DIP','ORDPLUGINS','ORDDATA','SYSKM','ORACLE_OCM','ORDSYS','SYSDG','APEX_220200','ORDS_METADATA')
and TABLE_NAME NOT LIKE 'BIN$%'
group by owner,table_name
having count(COLUMN_NAME)>200;

1.11 关注CPU耗时高的SQL

总体思路
1、一个快照周期内平均CPU耗时高,一般说明此类SQL单次消耗CPU多。比如一个小时内平均CPU耗时超过0.5秒。
2、一个快照周期内总CPU耗时高,平均CPU耗时不高,可能存在执行次数多,总CPU消耗大。按照CPU耗时排名SQL

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/26288.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 下 自动补全功能

在一下Linux发行版本中&#xff0c;比如说openEuler系统是没有命令补全功能的&#xff0c;为方便起见&#xff0c;故增加命令补全功能 # 安装bash-completion软件包&#xff0c;这个包提供了bash shell的自动补全功能支持 yum install -y bash-completion# 将docker命令的自动…

IC验证中有符号浮点数的运算(避坑)

如上图&#xff0c;仅第一种表达才能计算出正确的结果-180&#xff0c;另外两种方式存在缺少符号和溢出的错误&#xff0c;计算出的均是180&#xff0c;其中reg[31:0] theta_q31 h8000_0000。 如果 theta_q31 h8000_0000到h7fff_ffff之间的数时&#xff0c;上述第一种表达仅能…

【2024年计算机相关专业是否还值得选择】

1、当前背景 2024年高考落幕&#xff0c;高三学生又将面临人生中的重要抉择&#xff1a;选择大学专业。在这个关键节点&#xff0c;计算机相关专业是否还像以前那样吃香呢&#xff0c;是否还值得考生去选择呢&#xff1f;答案是肯定的。 2、行业现状 我作为一个计算机专业的过来…

暗色系B端界面有什么好处、应用场景、缺点、该如何设计。

B端管理系统界面蓝色系和浅色系的非常多&#xff0c;暗色系一般不作为首选&#xff0c;这背后是什么原因呢&#xff0c;如果真的要设计暗色系界面&#xff0c;该如何办呢&#xff0c;本文就解决这些问题。 一、暗色系B端界面相对于浅色系有什么好处 1. 减少眩光和视觉疲劳&am…

国学诗词app开发,学古贯今,句句珠玑

“鹅鹅鹅&#xff0c;曲项向天歌。”这是很多人学会的第一首诗&#xff0c;国学诗词作为中华传统文化的重要组成部分&#xff0c;不仅在历史中占据重要地位&#xff0c;也是儿童学前启蒙的不二选择。对于家长来说&#xff0c;他们更喜欢在学前教孩子一些经典国学和古诗词&#…

uniapp APP读取bin文件(仅测试安卓可用)

1.解析bin文件内容 getData(path) {return new Promise((resolve) => {uni.downloadFile({url: path, // .bin 文件 URLsuccess: (res) => {if (res.statusCode === 200) {//文件读写是一个异步请求 用promise包起来方便使用时的async+awaitplus.io.resolveLocalFileSyst…

高考后的抉择:计算机相关专业的未来发展与前景探讨

人不走空 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌赋&#xff1a;斯是陋室&#xff0c;惟吾德馨 目录 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌…

java算法:快速排序

快速排序是一种常用的排序算法&#xff0c;它利用分治的思想将一个数组分成两个子数组&#xff0c;然后递归地对子数组进行排序&#xff0c;最终将整个数组排序完成。 快速排序的基本思想如下&#xff1a; 选择一个基准元素&#xff08;pivot&#xff09;&#xff0c;通常选择…

代码随想录学习Day 37

1049.最后一块石头的重量Ⅱ 题目链接 讲解链接 思路&#xff1a;与前一题基本一致&#xff0c;将所有石头分为重量最接近sum/2的两堆&#xff0c;碰撞之后剩下的就是最小值 动规五部曲&#xff1a; 1.dp数组及其下标含义&#xff1a;重量为j的背包所能容纳的最大价值&#…

使用C#快速搭建一个在windows运行的exe应用

文章目录 一、前言1.1 编写语言需要工具1.2 选择自己需要的组件进行安装 二、新建项目1.1 新建一个 .NET4.x 的项目1.2 添加一个小案例1.3 对界面进行美化1.3.1、配置Form属性1.3.2、配置Button按钮 1.4 查看组将的相关代码 三、后记 一、前言 这是一个比较旧的内容&#xff0…

【android】json

设置第potition个数据项的view的属性 成功显示数据项&#xff0c;熟悉recycleview三个方法 新建页面&#xff0c;定义适配器&#xff0c;指定使用MyViewHolder类对象保存每个数据胡view组件 padding-内部边距 bold-加粗 新建类&#xff0c;描述新闻内容 定义组件 public i…

模拟信号转RS-485/232,数据采集A/D转换模块 YL21

特点&#xff1a; ● 模拟信号采集&#xff0c;隔离转换 RS-485/232输出 ● 采用12位AD转换器&#xff0c;测量精度优于0.1% ● 通过RS-485/232接口可以程控校准模块精度 ● 信号输入 / 输出之间隔离耐压3000VDC ● 宽电源供电范围&#xff1a;8 ~ 32VDC ● 可靠性高&…

网络安全 - ARP 欺骗原理+实验

APR 欺骗 什么是 APR 为什么要用 APR A P R \color{cyan}{APR} APR&#xff08;Address Resolution Protocol&#xff09;即地址解析协议&#xff0c;负责将某个 IP 地址解析成对应的 MAC 地址。 在网络通信过程中会使用到这两种地址&#xff0c;逻辑 IP 地址和物理 MAC 地址&…

如何保证数据库和缓存的一致性

背景&#xff1a;为了提高查询效率&#xff0c;一般会用redis作为缓存。客户端查询数据时&#xff0c;如果能直接命中缓存&#xff0c;就不用再去查数据库&#xff0c;从而减轻数据库的压力&#xff0c;而且redis是基于内存的数据库&#xff0c;读取速度比数据库要快很多。 更新…

android studio过滤日志

荣耀手机的日志有很多乱七八糟的输出 在logcat设置过滤 filter name:过滤名称随意 log tag不知道是什么 log message设置过滤的内容或者设置显示的内容 需要过滤的内容&#xff1a; ^(?!.*(gralloc4|InputMethodManager|tagSocket|dataspace)).*$以|分割要过滤的内容 要显…

力扣刷题记录: 1339. 分裂二叉树的最大乘积

本题是第174场周赛的 Q3&#xff0c;LC竞赛分为1675. 方法一. 递归&#xff08;超时&#xff09; 单纯使用递归对每一个节点进行遍历&#xff0c;代码如下&#xff1a; class Solution {long long ans -1; public:int maxProduct(TreeNode* root) {long long total_sum sum…

计算机网络(2) 网络层:IP服务模型

一.Internet Protocol在TCP/IP四层模型中的作用 第三层网络层负责数据包从哪里来到哪里去的问题。传输层的数据段提交给网络层后&#xff0c;网络层负责添加IP段&#xff0c;包含数据包源地址与目的地址。将添加IP段的数据包交由数据链路层添加链路头形成最终在各节点传输中所需…

Maven:一个下载jar依赖失败的问题解决方案

内部的一个jar包已经上传到了私服上&#xff0c;在私服管理端也能看到该jar包的完整信息&#xff0c;但是springboot项目引入该jar包发现死活下载不下来&#xff0c;报错如图&#xff1a; 从该错误信息中可以看到&#xff0c;找不到服务名是xxl-job这个的&#xff0c;我们要找的…

备战 清华大学 上机编程考试-冲刺前50%,倒数第3天

T1:水滴 - 模拟 这是一个经典的游戏。 在一个 &#x1d45b;&#x1d45a; 的棋盘上&#xff0c;每一个格子中都有一些水滴。 玩家的操作是&#xff0c;在一个格子中加一滴水。 当一个格子中的水滴数超过了 4&#xff0c;这一大滴水就会因格子承载不住而向外扩散。扩散的规…

如何将 API 管理从 Postman 转移到 Apifox

上一篇推文讲到用 Swagger 管理的 API 怎么迁移到 Apifox&#xff0c;有许多同学反馈说能不能介绍一下 Postman 的迁移以及迁移过程中需要注意的事项。那么今天&#xff0c;它来了&#xff01; 从 Postman 迁移到 Apifox 的方法有两种&#xff1a; 导出 Postman 集合 &#x…