管理员日常工作中必备的sql列表.docx

上传人:b****8 文档编号:9812178 上传时间:2023-02-06 格式:DOCX 页数:23 大小:24.68KB
下载 相关 举报
管理员日常工作中必备的sql列表.docx_第1页
第1页 / 共23页
管理员日常工作中必备的sql列表.docx_第2页
第2页 / 共23页
管理员日常工作中必备的sql列表.docx_第3页
第3页 / 共23页
管理员日常工作中必备的sql列表.docx_第4页
第4页 / 共23页
管理员日常工作中必备的sql列表.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

管理员日常工作中必备的sql列表.docx

《管理员日常工作中必备的sql列表.docx》由会员分享,可在线阅读,更多相关《管理员日常工作中必备的sql列表.docx(23页珍藏版)》请在冰豆网上搜索。

管理员日常工作中必备的sql列表.docx

管理员日常工作中必备的sql列表

数据库管理员日常工作中必备的sql列表

目录

1.捕捉运行很久的SQL

2.求DISKREAD较多的SQL

3.求DISKSORT严重的SQL

4.计算databuffer命中率

5.监控索引是否使用

6.求数据文件的I/O分布

7求某个隐藏参数的值

8求系统中较大的latch

9求归档日志的切换频率(生产系统可能时间会很长)

10.求回滚段正在处理的事务

11.求出无效的对象

12.求process/session的状态

13.求当前session的状态

14.求表的索引信息

15.显示表的外键信息

16.显示表的分区及子分区(user_tab_subpartitions)

17.使用dbms_xplan生成一个执行计划

18.求某个事务的重做信息(bytes)

19.求cache中缓存超过其5%的对象

20.求谁阻塞了某个session(10g)

21.求session的OS进程ID

22.查会话的阻塞

23.求等待的事件及会话信息/求会话的等待及会话信息

24.求会话等待的file_id/block_id

25求会话等待的对象

26求buffercache中的块信息

27求日志文件的空间使用

28求等待中的对象

29求当前事务的重做尺寸

30唤醒smon去清除临时段

31求回退率

32求DISKREAD较多的SQL

33求DISKSORT严重的SQL

34求对象的创建代码

35求表的索引

36求索引中行数较多的

37求当前会话的SID,SERIAL#

38求表空间的未用空间

39求表中定义的触发器

40求未定义索引的表

41执行常用的过程

42求freememory

43查看用户的回滚段的信息

44生成执行计划

45查看执行计划

46查看内存中存的使用

47查看表空间状态

48查看系统请求情况

49计算databuffer命中率

50查看内存使用情况

51查看用户使用内存情况

52查看对象的缓存情况

53查看库缓存命中率

54查看某些用户的hash

55查看字典命中率

56查看undo段的使用情况

57无效的对象

58求出某个进程,并对它进行跟踪

59求出锁定的对象

60求当前session的跟踪文件

61求对象所在的文件及块号

62求对象发生事务时回退段及块号

63.9i的在线重定义表

64常用的logmnr脚本(cybercafe)

65与权限相关的字典

66如何用dbms_stats分析表及模式?

67查看数据库的名字和归档状态

68查看数据库的instance名字和状态

69查看表空间名称、状态和管理方式

70查看控制文件的位置和名字

71查看日志文件的组名、成员数量、状态和大小

72查看日志文件的位置

73查看数据文件的位置和大小

74查看用户拥有的对象和类型

75查看临时文件的信息

76查看归档日志信息

 

捕捉运行很久的SQL

 columnusernameformata12

columnopnameformata16

columnprogressformata8

 

SELECTUsername,Sid,Opname,

Round(Sofar*100/Totalwork,0)||'%'ASProgress,Time_Remaining,

Sql_Text

FROMV$session_Longops,V$sql

WHERETime_Remaining<>0

ANDSql_Address=Address

ANDSql_Hash_Value=Hash_Value;

求DISKREAD较多的SQL

 

SELECTSt.Sql_Text

FROMV$sqls,V$sqltextSt

WHEREs.Address=St.Address

ANDs.Hash_Value=St.Hash_Value

ANDs.Disk_Reads>300;

求DISKSORT严重的SQL

 

SELECTSess.Username,SQL.Sql_Text,Sort1.Blocks

FROMV$sessionSess,V$sqlareaSQL,V$sort_UsageSort1

WHERESess.Serial#=Sort1.Session_Num

ANDSort1.Sqladdr=SQL.Address

ANDSort1.Sqlhash=SQL.Hash_Value

ANDSort1.Blocks>200;

计算databuffer命中率

 

SELECTa.VALUE+b.VALUE"logical_reads",c.VALUE"phys_reads",

Round(100*((a.VALUE+b.VALUE)-c.VALUE)/(a.VALUE+b.VALUE))"BUFFERHITRATIO"

FROMV$sysstata,V$sysstatb,V$sysstatc

WHEREa.Statistic#=40

ANDb.Statistic#=41

ANDc.Statistic#=42;

 

SELECTNAME,

(1-(Physical_Reads/(Db_Block_Gets+Consistent_Gets)))*100h_Ratio

FROMV$buffer_Pool_Statistics;

  --监控索引是否使用

  alterindex&index_namemonitoringusage;

  alterindex&index_namenomonitoringusage;

  select*fromv$object_usagewhereindex_name=&index_name;

  --求数据文件的I/O分布

  selectdf.name,phyrds,phywrts,phyblkrd,phyblkwrt,singleblkrds,readtim,writetim

  fromv$filestatfs,v$dbfiledf

  wherefs.file#=df.file#orderbydf.name;

  --求某个隐藏参数的值

  colksppinmformata54

  colksppstvlformata54

  selectksppinm,ksppstvl

  fromx$ksppipi,x$ksppcvcv

  wherecv.indx=pi.indxandpi.ksppinmlike'\_%'escape'\'andpi.ksppinmlike'%meer%';

  --求系统中较大的latch

  selectname,sum(gets),sum(misses),sum(sleeps),sum(wait_time)

  fromv$latch_children

  groupbynamehavingsum(gets)>50orderby2;

  --求归档日志的切换频率(生产系统可能时间会很长)

  selectstart_recid,start_time,end_recid,end_time,minutesfrom(selecttest.*,rownumasrn

  from(selectb.recidstart_recid,to_char(b.first_time,'yyyy-mm-ddhh24:

mi:

ss')start_time,

  a.recidend_recid,to_char(a.first_time,'yyyy-mm-ddhh24:

mi:

ss')end_time,round(((a.first_time-b.first_time)*24)*60,2)minutes

  fromv$log_historya,v$log_historybwherea.recid=b.recid+1andb.first_time>sysdate-1

  orderbya.first_timedesc)test)ywherey.rn<30

  --求回滚段正在处理的事务

  selecta.name,b.xacts,c.sid,c.serial#,d.sql_text

  fromv$rollnamea,v$rollstatb,v$sessionc,v$sqltextd,v$transactione

  wherea.usn=b.usnandb.usn=e.xidusnandc.taddr=e.addr

  andc.sql_address=d.addressandc.sql_hash_value=d.hash_valueorderbya.name,c.sid,d.piece;

  --求出无效的对象

  select'alterprocedure'||object_name||'compile;'

  fromdba_objects

  wherestatus='INVALID'andwner='&'andobject_typein('PACKAGE','PACKAGEBODY');

  /

  selectowner,object_name,object_type,statusfromdba_objectswherestatus='INVALID';

  --求process/session的状态

  selectp.pid,p.spid,s.program,s.sid,s.serial#

  fromv$processp,v$sessionswheres.paddr=p.addr;

  --求当前session的状态

  selectsn.name,ms.value

  fromv$mystatms,v$statnamesn

  wherems.statistic#=sn.statistic#andms.value>0;

  --求表的索引信息

  selectui.table_name,ui.index_name

  fromuser_indexesui,user_ind_columnsuic

  whereui.table_name=uic.table_nameandui.index_name=uic.index_name

  andui.table_namelike'&table_name%'anduic.column_name='&column_name';

  --显示表的外键信息

  colsearch_conditionformata54

  selecttable_name,constraint_name

  fromuser_constraints

  whereconstraint_type='R'andconstraint_namein(selectconstraint_namefromuser_cons_columnswherecolumn_name='&1');

  selectrpad(child.table_name,25,'')child_tablename,

  rpad(cp.column_name,17,'')referring_column,rpad(parent.table_name,25,'')parent_tablename,

  rpad(pc.column_name,15,'')referred_column,rpad(child.constraint_name,25,'')constraint_name

  fromuser_constraintschild,user_constraintsparent,

  user_cons_columnscp,user_cons_columnspc

  wherechild.constraint_type='R'andchild.r_constraint_name=parent.constraint_nameand

  child.constraint_name=cp.constraint_nameandparent.constraint_name=pc.constraint_nameand

  cp.position=pc.positionandchild.table_name='&table_name'

  orderbychild.owner,child.table_name,child.constraint_name,cp.position;

  --显示表的分区及子分区(user_tab_subpartitions)

  coltable_nameformata16

  colpartition_nameformata16

  colhigh_valueformata81

  selecttable_name,partition_name,HIGH_VALUEfromuser_tab_partitionswheretable_name='&table_name'

  --使用dbms_xplan生成一个执行计划

  explainplansetstatement_id='&sql_id'for&sql;

  select*fromtable(dbms_xplan.display);

  --求某个事务的重做信息(bytes)

  selects.name,m.value

  fromv$mystatm,v$statnames

  wherem.statistic#=s.statistic#ands.namelike'%redosize%';

  --求cache中缓存超过其5%的对象

  selecto.owner,o.object_type,o.object_name,count(b.objd)

  fromv$bhb,dba_objectso

  whereb.objd=o.object_id

  groupbyo.owner,o.object_type,o.object_name

  havingcount(b.objd)>(selectto_number(value)*0.05fromv$parameterwherename='db_block_buffers');

  --求谁阻塞了某个session(10g)

  selectsid,username,event,blocking_session,

  seconds_in_wait,wait_time

  fromv$sessionwherestatein('WAITING')andwait_class!

='Idle';

  --求session的OS进程ID

  colprogramformata54

  selectp.spid"OSThread",b.name"Name-User",s.program

  fromv$processp,v$sessions,v$bgprocessb

  wherep.addr=s.paddrandp.addr=b.paddr

  UNIONALL

  selectp.spid"OSThread",s.username"Name-User",s.program

  fromv$processp,v$sessionswherep.addr=s.paddrands.usernameisnotnull;

  --查会话的阻塞

  coluser_nameformata32

  select/*+rule*/lpad('',decode(l.xidusn,0,3,0))||l.oracle_usernameuser_name,o.owner,o.object_name,s.sid,s.serial#

  fromv$locked_objectl,dba_objectso,v$sessions

  wherel.object_id=o.object_idandl.session_id=s.sidorderbyo.object_id,xidusndesc;

  colusernameformata15

  collock_levelformata8

  colownerformata18

  colobject_nameformata32

  select/*+rule*/s.username,decode(l.type,'tm','tablelock','tx','rowlock',null)lock_level,o.owner,o.object_name,s.sid,s.serial#

  fromv$sessions,v$lockl,dba_objectso

  wherel.sid=s.sidandl.id1=o.object_id(+)ands.usernameisnotnull;

  --求等待的事件及会话信息/求会话的等待及会话信息

  selectse.sid,s.username,se.event,se.total_waits,se.time_waited,se.average_wait

  fromv$sessions,v$session_eventse

  wheres.usernameisnotnullandse.sid=s.sidands.status='ACTIVE'andse.eventnotlike'%SQL*Net%'orderbys.username;

  selects.sid,s.username,sw.event,sw.wait_time,sw.state,sw.seconds_in_wait

  fromv$sessions,v$session_waitsw

  wheres.usernameisnotnullandsw.sid=s.sidandsw.eventnotlike'%SQL*Net%'orderbys.username;

  --求会话等待的file_id/block_id

  coleventformata24

  colp1textformata12

  colp2textformata12

  colp3textformata12

  selectsid,event,p1text,p1,p2text,p2,p3text,p3

  fromv$session_wait

  whereeventnotlike'%SQL%'andeventnotlike'%rdbms%'andeventnotlike'%mon%'orderbyevent;

  selectname,wait_timefromv$latchlwhereexists(select1from(selectsid,event,p1text,p1,p2text,p2,p3text,p3

  fromv$session_wait

  whereeventnotlike'%SQL%'andeventnotlike'%rdbms%'andeventnotlike'%mon%'

  )xwherex.p1=l.latch#);

  --求会话等待的对象

  colownerformata18

  colsegment_nameformata32

  colsegment_typeformata32

  selectowner,segment_name,segment_type

  fromdba_extents

  wherefile_id=&file_idand&block_idbetweenblock_idandblock_id+blocks-1;

  --求buffercache中的块信息

  selecto.OBJECT_TYPE,substr(o.OBJECT_NAME,1,10)objname,b.objd,b.status,count(b.objd)

  fromv$bhb,dba_objectso

  whereb.objd=o.data_object_idando.owner='&1'groupbyo.object_type,o.object_name,b.objd,b.status;

  --求日志文件的空间使用

  selectle.leseqcurrent_log_sequence#,100*cp.cpodr_bno/le.lesizpercentage_full

  fromx$kcccpcp,x$kcclele

  wherele.leseq=cp.cpodr_seq;

  --求等待中的对象

  select/*+rule*/s.sid,s.username,w.event,o.owner,o.segment_name,o.segment_type,

  o.partition_name,w.seconds_in_waitseconds,w.state

  fromv$session_waitw,v$sessions,dba_extentso

  wherew.eventin(selectnamefromv$event_namewhereparameter1='file#'

  andparameter2='block#'andnamenotlike'control%')

  ando.owner<>'sys'andw.sid=s.sidandw.p1=o.file_idandw.p2>=o.block_idandw.p2

  --求当前事务的重做尺寸

  selectvalue

  fromv$mystat,v$statname

  wherev$mystat.statistic#=v$statname.stat

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 教育学心理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1