付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Oracle数据库性能监控语句TOC\o"1-5"\h\z一、查看临时表空间使用情况2二、查看使用临时表空间的SQL2三、收缩临时表空间3四、重建索引3五、查看表空间使用情况3六、查询表空间的总容量4七、查询表空间使用率4八、查找当前表级锁4九、监控当前数据库谁在运行什么SQL语句5十、找使用CPU多的用户session5十一、查看死锁信息5十二、具有最高等待的对象5十三、查看具有最高等待的对象6十四、查看等待最多的SQL6十五、显示正在等待锁的所有会话7十七、查数据库中正在执行的SQL7十八、每天执行慢的SQL8十九、查看非绑定变量的SQL9二十、查看LOG切换频率10二H^一、查看SQL执行进度10二十二、查询外键字段在主键表中没有索引的1.1......二十三、查看软硬解析,游标数1.2二十四、查看未提交的事物的会话和锁的对象12......二十五、通过系统中PID去数据库中找执行的SQL1.3.....二十六、序列/索引差异比对结果后的创建语句13.....二十七、查看热点块的对象1.5二十八、查看某用户表大小/总数情况1.5.......二十九、重新编译失效存储/包语句.16三十、Oracle查看各表空间使用情况和最大最小块16....三3^一、Oracle查看TEMP表空间使用情况17......三十二、Oracle查看回滚进度情况用的几个SQL.17.....三十三、Oracle查询锁之间的依赖关系1.8.......三十四、Oracle查找锁之间依赖关系的最源头SID20.....>查看临时表空间使用情况Selectf.tablespace_name,sum(f.bytes_free+f.bytes_used)/1024/1024/1024"totalGB”,sum((f.bytes_free+f.bytes_used)-nvl(p.bytes_used,0))/1024/1024/1024"FreeGB",sum(nvl(p.bytes_used,0))/1024/1024/1024"UsedGB"fromsys.v_$temp_space_headerf,dba_temp_filesd,sys.v_$temp_extent_poolpwheref.tablespace_name(+)=d.tablespace_nameandf.file_id(+)=d.file_idandp.file_id(+)=d.file_idgroupbyf.tablespace_name:、查看使用临时表空间的SQLSelectse.username,se.sid,su.extents,su.blocks*to_number(rtrim(p.value))asSpace,tablespace,segtype,sql_textfromv$sort_usagesu,v$parameterp,v$sessionse,v$='db_block_size'andsu.session_addr=se.saddrands.hash_value=su.sqlhashands.address=su.sqladdrorderbyse.username,se.sid三、收缩临时表空间altertablespacetempshrinkspace;altertablespacetempshrinktempfile''四、重建索引alterindexPK_CROSSRELATIONrebuild;五、查看表空间使用情况SELECTUPPER(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(SELECTTABLESPACE_NAME,ROUND(SUM(BYTES)/(1024*1024),2)TOTAL_BYTES,ROUND(MAX(BYTES)/(1024*1024),2)MAX_BYTESFROMSYS.DBA_FREE_SPACEGROUPBYTABLESPACE_NAME)F,(SELECTDD.TABLESPACE_NAME,ROUND(SUM(DD.BYTES)/(1024*1024),2)TOT_GROOTTE_MBFROMSYS.DBA_DATA_FILESDDGROUPBYDD.TABLESPACE_NAME)DWHERED.TABLESPACE_NAME=F.TABLESPACE_NAMEORDERBY1;六、查询表空间的总容量selecttablespace_name,sum(bytes)/1024/1024asMBfromdba_data_filesgroupbytablespace_name;七、查询表空间使用率selecttotal.tablespace_name,round(total.MB,2)asTotal_MB,考试大论坛round(total.MB-free.MB,2)asUsed_MB,round((1-free.MB/total.MB)*100,2)||'%'asUsed_Pctfrom(selecttablespace_name,sum(bytes)/1024/1024asMBfromdba_free_spacegroupbytablespace_name)free,(selecttablespace_name,sum(bytes)/1024/1024asMBfromdba_data_filesgroupbytablespace_name)totalwherefree.tablespace_name=total.tablespace_name;八、查找当前表级锁selectsess.sid,sess.serial#,lo.oracle_username,lo.os_user_name,ao.object_name,lo.locked_modefromv$locked_objectlo,dba_objectsao,v$sessionsesswhereao.object_id=lo.object_idandlo.session_id=sess.sid;杀掉锁表进程:altersystemkillsession'436,35123';九、监控当前数据库谁在运行什么SQL语句selectosuser,username,sql_textfromv$sessiona,v$sqltextbwherea.sql_address=b.addressorderbyaddress,piece;十、找使用CPU多的用户sessionselecta.sid,spid,status,substr(gram,1,40)prog,a.terminal,osuser,value/60/100valuefromv$sessiona,v$processb,v$sesstatcwherec.statistic#=12andc.sid=a.sidanda.paddr=b.addrorderbyvaluedesc;十一、查看死锁信息SELECT(SELECTusernameFROMv$sessionWHERESID=a.SID)blocker,a.SID,'isblocking',(SELECTusernameFROMv$sessionWHERESID=b.SID)blockee,b.SIDFROMv$locka,v$lockbWHEREa.BLOCK=1ANDb.request>0ANDa.id1=b.id1ANDa.id2=b.id2;十二、具有最高等待的对象SELECTo.OWNER,o.object_name,o.object_type,a.event,SUM(a.wait_time+a.time_waited)total_wait_timeFROMv$active_session_historya,dba_objectsoWHEREa.sample_timeBETWEENSYSDATE-30/2880ANDSYSDATEANDa.current_obj#=o.object_idGROUPBYo.OWNER,o.object_name,o.object_type,a.eventORDERBYtotal_wait_timeDESC;十三、查看具有最高等待的对象SELECTa.session_id,s.osuser,s.machine,gram,o.owner,o.object_name,o.object_type,a.event,SUM(a.wait_time+a.time_waited)total_wait_timeFROMv$active_session_historya,dba_objectso,v$sessionsWHEREa.sample_timeBETWEENSYSDATE-30/2880ANDSYSDATEANDa.current_obj#=o.object_idANDa.session_id=s.SIDGROUPBYo.owner,o.object_name,o.object_type,a.event,a.session_id,gram,s.machine,s.osuserORDERBYtotal_wait_timeDESC;十四、查看等待最多的SQLSELECTgram,a.session_id,a.user_id,d.username,s.sql_text,SUM(a.wait_time+a.time_waited)total_wait_timeFROMv$active_session_historya,v$sqlareas,dba_usersdWHEREa.sample_timeBETWEENSYSDATE-30/2880ANDSYSDATEANDa.sql_id=s.sql_idANDa.user_id=d.user_idGROUPBYgram,a.session_id,a.user_id,s.sql_text,d.username;十五、显示正在等待锁的所有会话SELECT*FROMDBA_WAITERS;十七、查数据库中正在执行的SQLSELECTSE.INST_ID,-实例SQ.SQL_TEXT,/*SQL文本*/SQ.SQL_FULLTEXT,/*SQL全音B文本*/SE.SID,/*会话的唯一标识,通常要对某个会话进行分析前,首先就需要获得该会话的SID。*/-SE.SERIAL#,/*会话的序号*/SQ.OPTIMIZER_COSTASCOST_,/*COST值*/SE.LAST_CALL_ETCONTINUE_TIME,/*执行时间可能是单个sql也可能是整个功能*/SE.PREV_EXEC_START:SQLexecutionstartofthelastexecutedSQLstatement*/SE.EVENT,/等待事件*/SE.LOCKWAIT,/*是否等待LOCK(SE,P)*/SE.MACHINE,/*客户端的机器名。(WORKGROUP\PC-201211082055)*/SQ.SQL_ID,/*SQL_ID*/SE.USERNAME,/创建该会话的用户名*/SE.LOGON_TIME/*登陆时间*/-SE.TERMINAL,/*客户端运行的终端名。(PC-201211082055)*/-,SQ.HASH_VALUE,/*一个SQL产生的HASH值*/-SQ.PLAN_HASH_VALUE/*执行SQL的HASH值(解析后HASH值),与SQL_ADDRESS关联查询其他SQL相关视图后即可查询会话当前正在执行的SQL语句*/FROMGV$SESSIONSE,/*会话信息。每一个连接到ORACLE数据库的会话都能在该视图中对应一条记录,根据该视图中的信息可以查询该会话使用的用户,正在执行或者刚刚执行的SQL语句*//*[GV$SQLAREA多节点]*/GV$SQLAREASQ/*跟踪所有SHAREDPOOL中的共享CURSOR信息,包括执行次数,逻辑读,物理读等*/WHERESE.SQL_HASH_VALUE=SQ.HASH_VALUEANDSE.STATUS='ACTIVE'ANDSE.SQL_ID=SQ.SQL_IDANDSQ.INST_ID=SE.INST_IDANDSE.USERNAMEisnotnull;--过滤条件--ANDSE.USERNAME='FWSB'--用户名--ANDSQ.COMMAND_TYPEIN(2,3,5,6,189)--ANDSE.SID!=USERENV('SID')/*rac集群环境误用*/--ANDMACHINE!='WORKGROUP\MHQ-PC';,八、每天执行慢的SQLSELECTS.SQL_TEXT,S.SQL_FULLTEXT,S.SQL_ID,ROUND(ELAPSED_TIME/1000000/(CASEWHEN(EXECUTIONS=0ORNVL(EXECUTIONS,1)=1)THEN1ELSEEXECUTIONSEND),2)"执行时间'S'",S.EXECUTIONS,执行次数",S.OPTIMIZER_COST"COST",S.SORTS,S.MODULE,--连接模式(JDBCTHINCLIENT:程序)--S.LOCKED_TOTAL,S.PHYSICAL_READ_BYTESW理读",--S.PHYSICAL_READ_REQUESTS物理读请求",S.PHYSICAL_WRITE_REQUESTSW理写",--S.PHYSICAL_WRITE_BYTES物理写请求",S.ROWS_PROCESSED"返回行数",S.DISK_READS"磁盘读",S.DIRECT_WRITES"直接路径写",S.PARSING_SCHEMA_NAME,S.LAST_ACTIVE_TIMEFROMGV$SQLAREASWHEREROUND(ELAPSED_TIME/1000000/(CASEWHEN(EXECUTIONS=0ORNVL(EXECUTIONS,1)=1)THEN1ELSEEXECUTIONSEND),2)>5--1000000微秒=1S--ANDS.PARSING_SCHEMA_NAME=USERANDTO_CHAR(S.LAST_LOAD_TIME,'YYYY-MM-DD')=TO_CHAR(SYSDATE,'YYYY-MM-DD')ANDS.COMMAND_TYPEIN(2,3,5,6,189)/*值对应类型2:INSERT、3:SELECT6:UPDATE、7:DELETE189:MERGE查询V$SQLCOMMAND*/ANDMODULE='JDBCThinClient'ORDERBY"执行时间'S'"DESC;十九、查看非绑定变量的SQLSELECTV.SQL_ID,V.SQL_FULLTEXT,V.PARSING_SCHEMA_NAME,FM.EXECUTIONS_COUNT,FM.ELAPSED_TIMEFROM(SELECTL.FORCE_MATCHING_SIGNATUREMATHCES,MAX(L.SQL_ID||L.CHILD_NUMBER)MAX_SQL_CHILD,DENSE_RANK()OVER(ORDERBYCOUNT(*)DESC)RANKING,ROUND(SUM(ROUND(ELAPSED_TIME/1000000/(CASEWHEN(EXECUTIONS=0ORNVL(EXECUTIONS,1)=1)THEN1ELSEEXECUTIONSEND),5)))ELAPSED_TIME,SUM(L.EXECUTIONS)EXECUTIONS_COUNTFROMV$SQLLWHERETO_CHAR(TO_DATE(LAST_LOAD_TIME,'YYYY-MM-DDHH24:MI:SS'),'YYYY-MM-DD')=TO_CHAR(SYSDATE-1,'YYYY-MM-DD')--当天LAST_LOAD_TIME(VARCHAR类型,LOADEDINTOTHELIBRARYCACHETIME)ANDL.MODULELIKE'%JDBC%'--程序连接ANDL.FORCE_MATCHING_SIGNATURE<>0ANDL.PARSING_SCHEMA_NAME=UPPER('&USERNAME')--用户ANDL.COMMAND_TYPEIN(2,3,5,6,189)--命令类型2:INSER不3:SELECT6:UPDATE、7:DELETE189:MERGE查询V$SQLCOMMANDGROUPBYL.FORCE_MATCHING_SIGNATUREHAVINGCOUNT(*)>5)FM,V$SQLVWHEREFM.MAX_SQL_CHILD=(V.SQL_ID||V.CHILD_NUMBER)ANDEXECUTIONS_COUNT>=50--执行次数超过50次先筛选改写,后续慢慢在围小ORDERBYFM.RANKING;--V$SQL_BIND_CAPTURE--记录包含变量得表..包括ROWNUM<:1变量二十、查看LOG切换频率selectb.SEQUENCE#,b.FIRST_TIME,a.SEQUENCE#,a.FIRST_TIME,round(((a.FIRST_TIME-b.FIRST_TIME)*24)*60,2)fromv$log_historya,v$log_historybwherea.SEQUENCE#=b.SEQUENCE#+1andb.THREAD#=1orderbya.SEQUENCE#desc;二H^一、查看SQL执行进度--显示运行时间超过6秒的数据库操作的状态SELECTA.SID,A.SERIAL#,OPNAME,TARGET,--对象TO_CHAR(START_TIME,'YYYY-MM-DDHH24:MI:SS')START_TIME,--开始时间(SOFAR/TOTALWORK)*100PROGRESS,--进度比TIME_REMAINING,--估算剩余时间ELAPSED_SECONDS,--运行时间S'A.SQL_IDFROMV$SESSION_LONGOPSAWHERESID=;**其中SID和SERIAL#是与V$SESSION中的匹配的,**OPNAME:指长时间执行的操作名.如:TABLESCAN**TARGET:被操作的OBJECT_NAME.如:TABLEA**TARGET_DESC:描述TARGET的容**SOFAR:这个是需要着重去关注的,表示已要完成的工作数,如扫描了多少个块。**TOTALWORK:指目标对象一共有多少数量(预计)。如块的数量。**START_TIME:进程的开始时间**LAST_UPDATE_TIM:最后一次调用SET_SESSION_LONGOPS勺时间**TIME_REMAINING:估计还需要多少时间完成,单位为秒**ELAPSED_SECONDS:指从开始操作时间至U最后更新时间**MESSAGE:对于操作的完整描述,包括进度和操作容。**USERNAME:与V$SESSION中的一样。**SQL_ADDRESS:关联V$SQL**SQL_HASH_VALUE:关联V$SQL***QCSID:主要是并行查询一起使用。二十二、查询外键字段在主键表中没有索引的SELECTC.*,C1.r_constraint_name,c2.table_name,T.NUM_ROWS,'createindexidx_'||c.table_name||'_'||column_name||'on'||c.table_name||'('||column_name||');'FROMUSER_CONS_COLUMNSCJOINUSER_CONSTRAINTSC1ONC1.CONSTRAINT_NAME=C.CONSTRAINT_NAMEANDC1.CONSTRAINT_TYPE='R'AND(C.TABLE_NAME,C.COLUMN_NAME)NOTIN(SELECTTABLE_NAME,COLUMN_NAMEFROMUSER_IND_COLUMNSI)JOINUSER_TABLESTONT.TABLE_NAME=C.TABLE_NAMEjoinUSER_CONSTRAINTSc2onc1.r_constraint_name=c2.constraint_name;博客:为什么子表外键列需要建立索引?/17203031/viewspace-701832/**自己测试【外键字段不加索引时】**update外键表,主键表delete任何数据都不允许;但updatesession1的围且set字段不是where字段就可以执行,加索引后,更改where字段的数据会报错二十三、查看软硬解析,游标数SELECT/*A.SID,*//*A.STATISTIC#,*/SUM(A.VALUE),B.NAME,(CASEWHENNAME='PARSECOUNT(TOTAL)'THEN'表示总的解析次数’WHENNAME='PARSECOUNT(HARD)'THEN'表示硬解析的次数’WHENNAME='SESSIONCURSORCACHECOUNT'THEN'表示缓存的游标个数’WHENNAME='SESSIONCURSORCACHEHITS'THEN'表示从缓存中找到游标的次数’WHENNAME='OPENEDCURSORSCURRENT'THEN'表示SESSION中打开的游标数'END)FROMV$SESSTATA,V$STATNAMEBWHEREA.STATISTIC#=B.STATISTIC#ANDB.NAMEIN('PARSECOUNT(HARD)','PARSECOUNT(TOTAL)','SESSIONCURSORCACHECOUNT','SESSIONCURSORCACHEHITS','OPENEDCURSORSCURRENT')--ANDSID=11GROUPBYB.NAMEORDERBYNAME;--#用于衡量软硬解析/游标共享比二十四、查看未提交的事物的会话和锁的对象SELECTDISTINCTS.SID,S.SERIAL#,S.MACHINE,L.SQL_TEXT,S.LAST_CALL_ET,'ALTERSYSTEMKILLSESSION'''||S.SID||',|||S.SERIAL#||"'''),LO.ORACLE_USERNAME,LO.OS_USER_NAME,AO.OBJECT_NAME,LO.LOCKED_MODEFROMV$SESSIONS,V$TRANSACTIONT,V$SQLL,V$LOCKED_OBJECTLO,DBA_OBJECTSAOWHERES.TADDR=T.ADDRANDS.PREV_SQL_ADDR=L.ADDRESSANDAO.OBJECT_ID=LO.OBJECT_IDANDLO.SESSION_ID=S.SID;二十五、通过系统中PID去数据库中找执行的SQLSELECTA.USERNAME,A.PROGRAM,B.SPID,C.SQL_TEXT,C.SQL_FULLTEXTFROMV$SESSIONA,V$PROCESSB,V$SQLAREACWHEREA.PADDR=B.ADDRANDA.SQL_HASH_VALUE=C.HASH_VALUEANDA.STATUS='ACTIVE'ANDA.USERNAMENOTIN('SYS','SYSTEM','SYSMAN')ANDA.SID!=USERENV('SID')ANDB.SPID=填写PID;二十六、序列/索引差异比对结果后的创建语句(例如:将A用户index和B用户对比,将A用户多B用户的在B用户创建)【如下2个SQL都需要在缺少sequence/indexA用户执行】--#SEQUENCE的创建语句:SELECT'CREATESEQUENCE'||SEQUENCE_NAME||'MINVALUE'||MIN_VALUEII'MAXVALUE'||MAX_VALUE||'STARTWITH'||LAST_NUMBER||'INCREMENTBY'||INCREMENT_BY||(CASEWHENCACHE_SIZE=0THEN'NOCACHE'ELSE'CACHE'||CACHE_SIZEEND)||';'FROMUSER_SEQUENCESWWHERE--过滤掉登录用户存在的SEQUENCENOTEXISTS(SELECT1FROMUSER_SEQUENCES@DB_SINOSOFTW1WHEREW.SEQUENCE_NAME=W1.SEQUENCE_NAME);--#索引差异结果的创建语句SELECT'CREATE'||INDEX_TYPE||'INDEX'||INDEX_NAME||'ON'||TABLE_NAME||'('||LISTAGG(CNAME,',')WITHINGROUP(ORDERBYCOLUMN_POSITION)||');'FROM(SELECTIC.INDEX_NAME,IC.TABLE_NAME,IC.COLUMN_NAMECNAME,IC.COLUMN_POSITION,COUNT(IC.INDEX_NAME)OVER(PARTITIONBYIC.INDEX_NAME,IC.TABLE_NAME)CON,I.INDEX_TYPEFROMUSER_IND_COLUMNS@DB_SINOSOFTICJOINUSER_INDEXES@DB_SINOSOFTIONI.INDEX_NAME=IC.INDEX_NAMEWHERE--过滤掉登录用户存在的INDEXNOTEXISTS(SELECT1FROMUSER_IND_COLUMNSIC1WHEREIC1.INDEX_OWNER=UPPER('&TO_USERNAME')ANDIC.INDEX_NAME=IC1.INDEX_NAME)--过滤掉主键,避免索引创建,在创建主键报错对象已存在ANDIC.INDEX_NAMENOTIN(SELECTC.CONSTRAINT_NAMEFROMUSER_CONSTRAINTS@DB_SINOSOFTC)ORDERBYIC.INDEX_NAME,IC.COLUMN_POSITION)GROUPBYINDEX_TYPE,CON,INDEX_NAME,TABLE_NAME;二十七、查看热点块的对象SELECTA.HLADDR,A.FILE#,A.DBABLK,A.TCH,A.OBJ,B.OBJECT_NAMEFROMX$BHA,DBA_OBJECTSBWHERE(A.OBJ=B.OBJECT_IDORA.OBJ=B.DATA_OBJECT_ID)ANDA.HLADDR='0000000054435000'--V$SESSION_WAIT.P1RAWUNIONSELECTHLADDR,FILE#,DBABLK,TCH,OBJ,NULLFROMX$BHWHEREOBJIN(SELECTOBJFROMX$BHWHEREHLADDR='0000000054435000'MINUSSELECTOBJECT_IDFROMDBA_OBJECTSMINUSSELECTDATA_OBJECT_IDFROMDBA_OBJECTS)ANDHLADDR='0000000054435000'ORDERBY4;,八、查看某用户表大小/总数情况SELECTT.TABLE_NAME,TC.COMMENTS,T.NUM_ROWS,ROUND(SUM(S.BYTES/1024/1024/1024))GBFROMUSER_TABLESTJOINUSER_SEGMENTSSONS.SEGMENT_NAME=T.TABLE_NAMEJOINUSER_TAB_COMMENTSTCONTC.TABLE_NAME=T.TABLE_NAMEGROUPBYT.TABLE_NAME,TC.COMMENTS,T.NUM_ROWSORDERBYNUM_ROWSDESCNULLSLAST;二十九、重新编译失效存储/包语句SELECT'ALTER'||(CASEWHENOBJECT_TYPE='PACKAGEBODY'THEN'PACKAGE'ELSEOBJECT_TYPEEND)||''/*||OWNER||'.'*/||OBJECT_NAME||'COMPILE'||(CASEWHENOBJECT_TYPE='PACKAGEBODY'THEN'BODY;'ELSE';';END)--除类型是PACKAGEBODY返回是PACKAGE,其他正常显示类型,是PACKAGEBODY显示COMPILEBODY否贝U显示COMPILEFROMUSER_OBJECTSWHERESTATUS!='VALID'-->存储状态‘无效’--ANDOWNER=USERANDOBJECT_NAMENOTLIKE'%ETL%'ORDERBYLAST_DDL_TIMEDESC;三十、Oracle查看各表空间使用情况和最大最小块SELECTUPPER(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空闲空间(G)”,F.MAX_BYTES最大块(G)"FROM(SELECTTABLESPACE_NAME,ROUND(SUM(BYTES)/1024/1024/1024,2)TOTAL_BYTES,ROUND(MAX(BYTES)/1024/1024/1024,2)MAX_BYTESFROMSYS.DBA_FREE_SPACEGROUPBYTABLESPACE_NAME)F,(SELECTDD.TABLESPACE_NAME,ROUND(SUM(DD.BYTES)/1024/1024/1024,2)TOT_GROOTTE_MBFROMSYS.DBA_DATA_FILESDDGROUPBYDD.TABLESPACE_NAME)D
WHERED.TABLESPACE_NAME=F.TABLESPACE_NAME;三H^一、Oracle查看TEMP表空间使用情况SELECTF.BYTES_FREE+F.BYTES_USEDTOTAL_BYTES,F.BYTES_FREE+F.BYTES_USED-NVL(P.BYTES_USED,0)FREE_BYTES,D.FILE_NAME,NVL(P.BYTES_USED,0)USED_BYTESFROMSYS.V_$TEMP_SPACE_HEADERF,DBA_TEMP_FILESD,SYS.V_$TEMP_EXTENT_POOLPWHEREF.TABLESPACE_NAME(+)=D.TABLESPACE_NAMEANDF.FILE_ID(+)=D.FILE_IDANDP.FILE_ID(+)=D.FILE_ID;-->等同于SELECTTABLESPACE_NAME,TF.TABLESPACE_SIZE,TF.FREE_SPACE,TF.TABLESPACE_SIZE-TF.FREE_SPACEFROMDBA_TEMP_FREE_SPACETF;三十二、Oracle查看回滚进度情况用的几个SQLSELECTDISTINCTKTUXESIZFROMX$KTUXEWHEREKTUXESTA='ACTIVE';SELECTUSED_UBLKFROMV$TRANSACTION;SELECTKTUXEUSN,KTUXESLTFROMX$KTUXEWHERE/*KTUXECFL='DEAD'AND*/KTUXESTA='ACTIVE';SELECT*FROMV_$FAST_START_TRANSACTIONS;SELECTUSED_UBLK,T.USED_URECFROMV$TRANSACTIONT;--查询视图V$FAST_START_TRANSACTIONS中字段UNDOBLOCKSDONE,UNDOBLOCKSTOTAL估算SMON恢复进度三十三、Oracle查询锁之间的依赖关系SELECTDISTINCTS.SID,/*会话的唯一标识,通常要对某个会话进行分析前,首先就需要获得该会话的SIDo*/--S.SERIAL#/*会话的序号*/,S.STATE/*WAITSTATE〜*/,S.BLOCKING_SESSION,--SESSIONIDENTIFIEROFTHEBLOCKINGSESSION.THISCOLUMNISVALIDONLYIFBLOCKING_SESSION_STATUSHASTHEVALUEVALID.S.BLOCKING_SESSION_STATUSSTATUS/*THISCOLUMNPROVIDESDETAILSONWHETHERTHEREISABLOCKINGSESSION:*/(CASEWHENSQL_TEXTISNULL/*LO.REQUEST=0*/THEN'(SID:'||S.SID||')会话SQL已跑完’ELSE'(SID:'||S.SID||')会话正执行SQL:'||SQL_.SQL_TEXTEND)SQL_TEXT/*执行完的SQL'SQL_TEX怖记SQL已跑完,否则标记SQL'*/,--SQL_.SQL_FULLTEXTSQL全文本,S.USERNAME/*创建该会话的用户名*/,O.OWNER||'.'||O.OBJECT_NAME锁的对象,--V$SESSION.ROW_WAIT_OBJ#若操作完的该字段值=-1,所以关联的V$LOCKED_OBJECT取锁表LO.REQUEST,--Lockmodeinwhichtheprocessrequeststhelock会话申请的锁的模式S.EVENT,S.MACHINE/*客户端的机器名。*/,S.LOGON_TIME/*登陆时间*/,'ALTERSYSTEMKILLSESSION'''||S.SID||','||S.SERIAL#||''';'KILL--若存在锁情况,会用到KILL锁释放〜FROMV$SESSIONSLEFTJOINV$SQLSQLONSQL_.SQL_ID=S.SQL_IDJOINV$LOCKED_OBJECTLONL.SESSION_ID=S.SIDJOINALL_OBJECTSOONL.OBJECT_ID=O.OBJECT_IDJOINV$LOCKLOON(LO.BLOCK!=0ORLO.REQUEST!=0)--V$LOCK.block=>Avalueofeither0or1,dependingonwhetherornotthelockinquestionistheblocker--V$LOCK.REQUEST=>Lockmodeinwhichtheprocessrequeststhelock:下文有值的意义~['0-none']WHERELO.SID=L.SESSION_IDANDLO.SID=S.SIDORDERBYS.BLOCKING_SESSIONDESC;注释:--视图==官网注释--v$session==http:〃docs.oracle./cd/E11882_01/server.112/e40402/dynviews_3016.htm#REFRN30223--V$SQL==http:〃docs.oracle./cd/E11882_01/server.112/e40402/dynviews_3043.htm#REFRN30246--V$LOCK==http:〃docs.oracle./cd/E11882_01/server.112/e40402/dynviews_2027.htm#REFRN30121--V$LOCKED_OBJECT==http://docs.oracle./cd/E11882_01/server.112/e40402/dynviews_2030.htm#REFRN30125--ALL_OBJECTS==http:〃docs.oracle./cd/E11882_01/server.112/e40402/statviews_1158.htm#REFRN20146--显示字段==官网注释:V$SESSION.STATE=Waitstate:--WAITING-Sessioniscurrentlywaiting--WAITEDUNKNOWNTIME-Durationofthelastwaitisunknown;thisisthevaluewhentheparameterTIMED_STATISTICSissettofalse--WAITEDSHORTTIME-Lastwaitwaslessthanahundredthofasecond--WAITEDKNOWNTIME-DurationofthelastwaitisspecifiedintheWAI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年上学校说课稿
- 2025-2026学年大鹿详细说课稿
- 2025-2026学年3级说课稿舞蹈
- 2025-2026学年乘车教学说课稿
- 2025-2026学年三年级上册音乐说课稿小班
- 焊接设备装配调试工操作水平评优考核试卷含答案
- 铁路车辆制修工岗前风险识别考核试卷含答案
- 路基路面工持续改进能力考核试卷含答案
- 2025-2026学年动物比尾巴说课稿
- 酒精酿造工安全技能测试考核试卷含答案
- 2025~2026学年七年级上学期第一次月考数学试卷2【附解析】
- 河南省郑州市实验中学2026-2027学年高二上学期第一次月考英语试卷
- 加入保险行业的十五大理由
- 酮症酸中毒指南2025版
- 社区公文写作格式和范文(15篇)
- 检验科试剂耗材精细化管理方案
- 2026年河南省高考物理试卷(含答案及解析)
- TAVR麻醉管理策略
- 泥结石路面施工方案
- 创面修复技术
- 2026年国家电网招聘之电网计算机考试题库500道(精练)
评论
0/150
提交评论