oracle运维常用语句,oracle运维个人常用检查语句整理
1、查找排序最多的SQL
SQL>
SELECT HASH_VALUE, SQL_TEXT, SORTS, EXECUTIONS FROM V$SQLAREA ORDER BY SORTS DESC;
2、查找磁盘读写最多的SQL
SQL>
SELECT * FROM (SELECT sql_text,disk_reads "total disk" , executions "total exec",disk_reads/executions "disk/exec"
FROM v$sql WHERE executions>0
and is_obsolete=‘N‘ ORDER BY 4 desc) WHERE ROWNUM<11 ;
3、查找工作量最大的SQL(实际上也是按磁盘读写来排序的)
SQL>
select substr(to_char(s.pct, ‘99.00‘), 2) || ‘%‘ load,s.executions executes,p.sql_text
from(select address,disk_reads,executions,pct,rank()
over (order by disk_reads desc) ranking
from (select address,disk_reads,executions,100 * ratio_to_report(disk_reads) over () pct
from sys.v_$sql
where command_type != 47)
where disk_reads > 50 * executions) s,sys.v_$sqltext p
where s.ranking <= 5 and p.address = s.address order by 1, s.address, p.piece;
4、查找低效的SQL语句
SQL>
select executions,disk_reads,buffer_gets,round((buffer_gets-disk_reads)/buffer_gets,2) Hit_radio,round(disk_reads/executions,2) reads_per_run,sql_text
From v$sqlarea
Where executions>0 and buffer_gets >0
and (buffer_gets-disk_reads)/buffer_gets<0.8 Order by 4 desc;
5、根据sid查看对应连接正在运行的sql
SQL>
select /*+ push_subq */command_type,sql_text,sharable_mem,persistent_mem,runtime_mem,sorts,version_count,loaded_versions,open_versions,users_opening,executions,users_executing,loads,first_load_time,invalidations,parse_calls,disk_reads,buffer_gets,rows_processed,sysdate start_time,sysdate finish_time,’>’||address sql_address,’N’status
From v$sqlarea
Where address=(select sql_address from v$session where sid=&sid);
6、查看datafile数据文件使用情况(sys用户执行)
SQL>
SELECT a.tablespace_name,
a.bytes total,
b.bytes used,
c.bytes free,
(b.bytes * 100) / a.bytes "% USED ",
(c.bytes * 100) / a.bytes "% FREE "
FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c
WHERE a.tablespace_name = b.tablespace_name
AND a.tablespace_name = c.tablespace_name;
7、查看数据库表空间使用情况
语句一:
SQL>
SELECT a.tablespace_name "表空间名",
total "表空间大小",
free "表空间剩余大小",
(total - free) "表空间使用大小",
total / (1024 * 1024 * 1024) "表空间大小(G)",
free / (1024 * 1024 * 1024) "表空间剩余大小(G)",
(total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)",
round((total - free) / total, 4) * 100 "使用率 %"
FROM (SELECT tablespace_name, SUM(bytes) free
FROM dba_free_space
GROUP BY tablespace_name) a,
(SELECT tablespace_name, SUM(bytes) total
FROM dba_data_files
GROUP BY tablespace_name) b
WHERE a.tablespace_name = b.tablespace_name;
语句二:
SQL>
SELECT SUM(bytes) / (1024 * 1024) AS free_space, tablespace_name
FROM dba_free_space
GROUP BY tablespace_name;
SELECT a.tablespace_name,
a.bytes total,
b.bytes used,
c.bytes free,
(b.bytes * 100) / a.bytes "% USED ",
(c.bytes * 100) / a.bytes "% FREE "
FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c
WHERE a.tablespace_name = b.tablespace_name
AND a.tablespace_name = c.tablespace_name;
8、查看表空间物理文件的名称及大小
SQL>
SELECT tablespace_name,
file_id,
file_name,
round(bytes / (1024 * 1024 * 1024), 0) total_space_GB
FROM dba_data_files
ORDER BY tablespace_name;
9、查看数据库的创建日期和归档方式
SQL>
SELECT created, log_mode, log_mode FROM v$database;
10、查询是否开启归档模式
SQL>
select name,log_mode,open_mode from v$database;
若是归档模式,则LOG_MODE=ARCHIVELOG
若是非归档模式,则LOG_MODE=NOARCHIVELOG
11、查看表空间是否自动扩展
SQL>
select file_name,autoextensible,increment_by from dba_data_files;
12、查询表空间最大扩展大小(注:当表空间开启了自动扩展特性,表空间会一直扩展到操作系统支持的最大大小)
SQL>
select tablespace_name,maxblocks*8 from dba_data_files;
13、查看总消耗时间最多的前10条SQL语句
SQL>
select * from (select v.sql_id,v.child_number,v.sql_text,v.elapsed_time,v.cpu_time,v.disk_reads,rank()
over(order by v.elapsed_time desc) elapsed_rank
from v$sql v) a where elapsed_rank <= 10;
14、查看CPU消耗时间最多的前10条SQL语句
SQL>
select * from (select v.sql_id,v.child_number,v.sql_text,v.elapsed_time,v.cpu_time,v.disk_reads,rank()
over(order by v.cpu_time desc) elapsed_rank from v$sql v) a
where elapsed_rank <= 10;
15、查看消耗磁盘读取最多的前10条SQL语句
SQL>
select * from (select v.sql_id,v.child_number,v.sql_text,v.elapsed_time,v.cpu_time,v.disk_reads,rank() over(order by v.disk_reads desc) elapsed_rank
from v$sql v) a
where elapsed_rank <= 10;
16、列出cpu_time占用top 10的sql
SQL>
select cpu_time,sql_text
from (select sql_text,cpu_time,rank() over (order by cpu_time desc) exec_rank from v$sql)
where exec_rank <=10;
17、执行次数最多的top 10
SQL>
select sql_text,executions
from (select sql_text,executions,rank() over (order by executions desc) exec_rank from v$sql)
where exec_rank <=10;
18、遭遇cpu过多占用,表现为%usr很高,top 或者topas中cpu占用最多的进程为oracle server process.则根据pid可以找出该pid对应的sql_text
SQL>
select se.username,se.machine,sq.cpu_time,sq.sql_text
from v$process p,v$session se,v$sqlarea sq
where p.addr=se.paddr and se.sql_hash_value=sq.hash_value and p.addr=‘&pid‘;
19、如何查询Oracle 编码格式
SQL>
select value from nls_database_parameters where parameter=‘NLS_CHARACTERSET‘;
20、查询oracle客户端编码
SQL>
select * from nls_instance_parameters where parameter=‘NLS_LANGUAGE‘;
21、缓冲区命中率:大于98%为最佳
SQL>
select (1-(sum(decode(name, ‘physical reads‘,value,0))/(sum(decode(name, ‘db block gets‘,value,0)) +sum(decode(name,‘consistent gets‘,value,0))))) * 100 "Hit Ratio"
from v$sysstat;
22、数据字典缓存命中率:大于98%为最佳
SQL>
select (1-(sum(getmisses)/sum(gets))) * 100 "Hit Ratio" from v$rowcache;
23、库缓存命中率:大于98%为最佳
SQL>
select Sum(Pins)/(Sum(Pins) + Sum(Reloads)) * 100 "Hit Ratio" from V$LibraryCache;
24、空闲的数据缓冲区的比例,空闲比例高于25%时,数据缓冲区设置得太大了,可能会浪费资源
SQL>
select decode(state,0, ‘FREE‘,1,decode(lrba_seq,0,‘AVAILABLE‘,‘BEING USED‘),3, ‘BEING USED‘, state) "BLOCK STATUS",count(*)
from x$bh group by decode(state,0,‘FREE‘,1,decode(lrba_seq,0,‘AVAILABLE‘,‘BEING USED‘),3, ‘BEING USED‘, state);
25、最浪费内存的前10个语句占所有语句的比例(小于5%为最佳)
SQL>
select sum(pct_bufgets) "Percent"
from (select rank() over ( order by buffer_gets desc ) as rank_bufgets,to_char(100 * ratio_to_report(buffer_gets) over (),‘999.99‘) pct_bufgets
from v$sqlarea ) where rank_bufgets < 11;
26、调整滥用磁盘读操作的主要语句
SQL>
select disk_reads, substr(sql_text,1,4000) from v$sqlarea order by disk_reads desc;
oracle运维个人常用检查语句整理
标签:decode 数据库表 cache number 缓存命中 lib 若是 sid cut
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:https://blog.51cto.com/8355320/2489187
oracle运维常用语句,oracle运维个人常用检查语句整理相关推荐
- _linux运维正确安装oracle流程
创建oracle用户和用户组 [root@Holmofy ~]# groupadd oinstall[root@Holmofy ~]# groupadd dba[root@Holmofy ~]# us ...
- linux中vim内容定位,Linux运维行走江湖必备之:vim命令常用参数
原标题:Linux运维行走江湖必备之:vim命令常用参数 vim是Linux运维日常工作中最常用的命令之一,vim命令的参数有很多,我们选用一些常用的命令参数,足以对付日常的文本编辑工作,如果日后有需 ...
- Oracle DG常用视图与运维护常用操作
墨墨导读:本文来自墨天轮(www.modb.pro)读者投稿,作者对DG常用视图与运维常用操作进行解读,分享至此,希望对大家有帮助. 1.查看备库状态 SQL> select open_mode ...
- ansible自动化运维详解(三)ansible常用模块续
文章目录 ansible自动化运维详解(三)ansible常用模块续 四.ansible常用模块(2) 4.10.yum_repository 4.11.dnf 4.12.service 及 fire ...
- 如何做好python自动化运维,python在运维中的应用
这篇文章主要介绍了一个有趣的事情,具有一定借鉴价值,需要的朋友可以参考下.希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下. 1.如何做好python自动化运维 随着移动互联网的普及, ...
- bind blz mysql_MySQ DBAL重点剖析课程 企业级MySQL系统安全与DBA运维日常事务管理 运维DBA必备宝典...
MySQ DBAL重点剖析课程 企业级MySQL系统安全与DBA运维日常事务管理 运维DBA必备宝典 本资源由JAD资源网收集整理丨www.jiuandun.com 资源简介 MySQ DBAL重点剖 ...
- 运维工程师使用的运维平台和工具表
运维工程师使用的运维平台和工具表 注:广义上来说,所有开源的软件都是运维工程师会使用到的平台和工具,同时也包括运维各个技术方向上自行研发的各类平台. Web服务器 apache tomcat ngin ...
- 运维工程师使用的运维平台和工具包括:
运维工程师使用的运维平台和工具包括: Web服务器:apache.tomcat.nginx.lighttpd 监控:nagios.ganglia.cacti.zabbix 自动部署:ansible.s ...
- 【安全运维】企业安全运维重点是什么?如何做?
企业安全运维重点是什么?如何做?相信很多企业管理者都有这样的困惑,不知如何解决.个人觉得企业安全运维的重点,其实就是建立一套标准化的运维管理体系,让运维的每件事情都有章可循,发现问题,快速解决问题.以 ...
最新文章
- 驾乘 AI 技术发展浪潮,全球最大中文 IT 社区 CSDN 宣布战略升级为 AI 社区
- 服务器物理内存高,服务器的物理内存高
- Excel 如何根据单元格中的值设立不同的颜色(或渐变)?(222)
- 【Java开发问题】对象封装+固定排序+list All elements are null引起的异常处理+Missing artifact com.sun:tools:jar:1.8.0
- 关于渲染流水线的几何变化
- JavaScript---DOM元素
- arch linux rpm格式,如何在ArchLinux上安装RPM包
- 最简单的图形用户代码_简单几句代码,画出精美的图形,快跟着学起来~
- Python的is和==区别
- python下载过程中最后一步执行opencv出错怎么回事_PyCharm安装opencv-python和opencv-contrib-python的一些问题和解决方法_2018-09-27...
- 三思笔记,涂抹ORACLE
- javascript的ActiveXObject造成“Automation服务器不能创建对象”
- 国产麒麟操作系统kylin V10 sp2操作系统安装openldap和kerberos
- c++ 11 多线程支持 (std::packaged_task)
- 投稿开奖丨“轻量应用服务器”征文活动阳光普照奖(8月)开奖啦
- 红外线计件器课程设计报告书
- win10如何删除用户计算机账户,win10电脑用户账户控制怎么取消_win10用户账户控制如何解除...
- plt.plot()函数解析(最清晰的解释)
- 杭州seo优化常用的工作手法
- Android模拟键盘和键盘监听的一些调研