Oracle数据库性能监控语句汇总.docx
文本预览下载声明
Oracle数据库性能监控语句一、查看临时表空间使用情况2二、查看使用临时表空间的SQL2三、收缩临时表空间3四、重建索引3五、查看表空间使用情况3六、查询表空间的总容量4七、查询表空间使用率4八、查找当前表级锁4九、监控当前数据库谁在运行什么SQL语句5十、找使用CPU多的用户session5十一、查看死锁信息5十二、具有最高等待的对象5十三、查看具有最高等待的对象6十四、查看等待最多的SQL6十五、显示正在等待锁的所有会话7十七、查数据库中正在执行的SQL7十八、每天执行慢的SQL8十九、查看非绑定变量的SQL9二十、查看LOG切换频率10二十一、查看SQL执行进度10二十二、查询外键字段在主键表中没有索引的11二十三、查看软硬解析,游标数12二十四、查看未提交的事物的会话和锁的对象12二十五、通过系统中PID去数据库中找执行的SQL13二十六、序列/索引差异比对结果后的创建语句13二十七、查看热点块的对象15二十八、查看某用户表大小/总数情况15二十九、重新编译失效存储/包语句16三十、 Oracle 查看各表空间使用情况和最大最小块16三十一、 Oracle 查看TEMP表空间使用情况17三十二、 Oracle 查看回滚进度情况用的几个SQL17三十三、Oracle 查询锁之间的依赖关系18三十四、Oracle 查找锁之间依赖关系的最源头SID20写于2016年1月,所有语句经过测试一、查看临时表空间使用情况 Select f.tablespace_name ,sum(f.bytes_free + f.bytes_used) /1024/1024/1024 total GB ,sum((f.bytes_free + f.bytes_used) - nvl(p.bytes_used, 0)) /1024/1024/1024 Free GB ,sum(nvl(p.bytes_used, 0)) /1024/1024/1024 Used GB from sys.v_$temp_space_header f, dba_temp_files d, sys.v_$temp_extent_pool p where f.tablespace_name(+) = d.tablespace_name and f.file_id(+) = d.file_id and p.file_id(+) = d.file_id group by f.tablespace_name 二、查看使用临时表空间的SQL Select se.username, se.sid, su.extents, su.blocks * to_number(rtrim(p.value)) as Space, tablespace, segtype, sql_text from v$sort_usage su, v$parameter p, v$session se, v$sql s where = db_block_size and su.session_addr = se.saddr and s.hash_value = su.sqlhash and s.address = su.sqladdr order by se.username, se.sid 三、收缩临时表空间 alter tablespace temp shrink space; alter tablespace temp shrink tempfile 四、重建索引 alter index PK_CROSSRELATION rebuild; 五、查看表空间使用情况 SELECT UPPER(F.TABLESPACE_NAME) 表空间名, D.TOT_GROOTTE_MB 表空间大小(M), D.TOT_GROOTTE_MB - F.TOTAL_BYTES 已使用空间(M), TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),990.99) || % 使用比, F.TOTAL_BYTES 空闲空间(M), F.MAX_BYTES 最大块(M) FROM (SELECT TABLESPACE_NAME, ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES, ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES FROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME)
显示全部