Oracle日常性能查看

发布时间 : 星期三 文章Oracle日常性能查看更新完毕开始阅读

lock_sga,如果设置lock_sga=true 使用非root 用户启动数据库将返回错误。

WINDOWS(作用不大)

不能设置lock_sga=true,可以通过设置pre_page_sga=true,使得数据库启动的时候就把所有内存页

装载,这样可能起到一定的作用。 22、内存参数调整数据缓冲区命中率

selectvaluefromv$sysstatwherename='physicalreads';

selectvaluefromv$sysstatwherename='physicalreadsdirect';selectvalu

efromv$sysstatwherename='physicalreadsdirect(lob)';selectvaluefromv

$sysstatwherename='consistentgets';

selectvaluefromv$sysstatwherename='dbblockgets';

这里命中率的计算应该是

令x=physicalreadsdirectphysicalreadsdirect(lob)

命中率=100-(physicalreads-x)/(consistentgetsdbblockgets-x)*100通常如果发现命中率低于90%,则应该调整应用可可以考虑是否增大数据缓冲区;共享池的命中率

selectsum(pinhits)/sum(pins)*100\

假如共享池的命中率低于95%,就要考虑调整应用(通常是没使用bindvar)或者增加内存;关于排序部分

selectname,valuefromv$sysstatwherenamelike'%sort%';

假如我们发现sorts(disk)/(sorts(memory)sorts(disk))的比例过高,则通常意味着sort_area_size部分内存较小,可考虑调整相应的参数。

关于log_buffer

selectname,valuefromv$sysstat

wherenamein('redoentries','redobufferallocationretries');

假如redo bufferallocationretries/redo entries 的比例超过1%我们就可以考虑增大

log_buffer

oracle常用SQL查询,望对大家有所启示 1、查看表空间的名称及大小

selectt.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_sizefromdba_tablespacest,dba_data_filesd wheret.tablespace_name=d.tablespace_name group byt.tablespace_name;2、查看表空间

物理文件的名称及大小

selecttablespace_name,file_id,file_name,round(bytes/(1024*1024),0)total_space fromdba_data_files

orderbytablespace_name;3、查看回滚段名称及大小

selectsegment_name,tablespace_name,r.status,(initial_extent/1024)InitialExtent,(next_extent/1024)NextExtent,max_extents,v.curextCur

Extent

Fromdba_rollback_segsr,v$rollstatvWherer.

segment_id=v.usn()

orderbysegment_name;4、查看

控制文件

selectnamefromv$controlfile;5、查看日志文件

selectmemberfromv$logfile;6、

查看表空间的使用情况

selectsum(bytes)/(1024*1024)asfree_space,tablespace_namefromdb

a_free_space

groupbytablespace_name;

SELECT A.TABLESPACE_NAME,A.BYTESTOTAL,B.BYTESUSED,C.BYTES FREE,(B.BYTES*100)/A.BYTES\FROMSYS.SM$TS_AVAILA,SYS.SM$TS_USEDB,SYS.SM$TS_FREEC

WHERE 7、查看数据库库对象

A.TABLESPACE_NAME=B.TABLESPACE_NAMEANDA.TABLESPACE_NAME=C.TABLESPACE_NAME;

selectowner,object_type,status,count(*)count#from all_objectsgroupbyowner,object_type,status; 8、查看数据库的版本

SelectversionFROMProduct_component_versionWhere SUBSTR(PRODUCT,1,6)='Oracle';

9、查看数据库的创建日期和归档方式

SelectCreated,Log_Mode,Log_ModeFromV$Database;10、捕捉运行

很久的SQL

columnusernameformat a12columnopnameformata16co

lumnprogressformata8selectuse

rname,sid,opname,

round(sofar*100/totalwork,0)||'%'asprogress,time_remaining,sql_text

fromv$session_longops,v$sqlw

heretime_remaining<>0andsql

_address=address

andsql_hash_value=hash_value

/11。查看数据表的参数信息

SELECTpartition_name,high_value,high_value_length,tablespace_name,pct_free,pct_used,ini_trans,max_trans,initial_extent,

next_extent,min_extent,max_extent,pct_increase,FREELISTS,freelist_groups,LOGGING,BUFFER_POOL,num_rows,blocks,empty_blocks,avg_sp

ace,chain_cnt,avg_row_len,sample_size,last_analyzed

FROMdba_tab_partitions

--WHEREtable_name=:tnameANDtable_owner=:townerORDE

RBYpartition_position

12.查看还没提交的事务

select*fromv$locked_object;select*fromv$transaction;13。查找object

为哪些进程所用

selectp.spid,s.si

d,

s.serial#serial_num,s.usernameuser_name,a.ty

peobject_type,s.osusero

s_user_name,a.owner, a.objectobject_name,decod

e(sign(48-command),1,

to_char(command),'ActionCode#'||to_char(command))action,p.pro

gramoracle_process,

s.terminalterminal,s.programprogram,s.statussess

ion_status

fromv$sessions,v$access

a,v$processpwheres.paddr=p.addrand

s.type='USER'anda.si

d =s.sidand

a.object='SUBSCRIBER_ATTR' orderbys.username,s.osuser14。回滚段查看

selectrownum,sys.dba_rollback_segs.segment_nameName,v$rollstat.extentsExtents,v$rollstat.rssizeSize_in_Bytes,v$rollstat.xactsXActs,

v$rollstat.getsGets,v$rollstat.waitsWaits,v$rollstat.writesWrites,sys.dba_rollback_se

gs.statusstatusfromv$rollstat,sys.dba_rollback_segs,v$rollnamewherev$rollname.name()=sys.dba_rollback_segs.segment_nameandv$rollstat.usn()=v$rollname.usnorderbyrownum

15。耗资源的进程(topsession)

selects.schemanameschema_name,decode(sign(48-command),1,to_char(command),'ActionCode#'||to_char(command))action,statussession_status,s.osuseros_user_name,s.sid,p.spid,s.serial#serial_num,nvl(s.username,'[Or

acleprocess]')user_name,s.terminalterminal,

s.programprogram,st.valuecriteria_valuefromv$sesstatst,v$sessions,v$processpwherest.si

d=s.sidandst.statistic#=to_number('38')and('ALL'='ALL'

ors.status='ALL')andp.addr=s.paddrorderbyst.valuedesc,p.spidasc,s.usernameasc,s.osuserasc

16。查看锁(lock)情况

select/*RULE*/ls.osuseros_user_name,ls.usernameuser_name,decode(ls.type,'

RW','Rowwaitenqueuelock','TM','DMLenqueuelock','TX','Transactionenqueuel

ock','UL','Usersuppliedlock')lock_type,o.object_nameobject,decode(ls.lmode,1,null,2,'RowShare',3,

'RowExclusive',4,'Share',5,'ShareRowExclusive',6,'Exclusive',null)lock_mode,o.o

wner,ls.sid,ls.serial#serial_num,ls.id1,ls.id2

fromsys.dba_objectso,(selects.osuser,s.username,l.type,l.lm

ode,s.sid,s.serial#,l.id1,l.id2fromv$sessions,

v$locklwheres.sid=l.sid)lswhereo.object_id=ls.id1ando.owner

<>'SYS'orderbyo.owner,o.object_name17。查看等待(wait)情况

SELECTv$waitstat.class,v$waitstat.countcount,SUM(v$sysstat.value)sum_valueF

ROMv$waitstat,v$sysstatWHEREv$sysstat.nameIN('dbblockgets','consistentgets')gr

oupbyv$waitstat.class,v$waitstat.count

18。查看sga情况

SELECTNAME,BYTESFROMSYS.V_$SGASTATORDERBYNAMEASC

19。查看catchedobject

SELECTowner,name,db_link,namespace,ty

pe,sharable_mem,loads,executions,locks,pins,keptFROMv$db_object_cache

20。查看V$SQLAREA

SELECTSQL_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_PROCESSEDFROMV$SQLAREA 21。查看object分类数量

selectdecode(o.type#,1,'INDEX',2,'TABLE' ,3,'CLUSTER',4,'VIEW',5 ,

'SYNONYM',6,'SEQUENCE','OTHER')object_type,count(*)quantityfromsys.obj$owhereo.type#>1groupbydecode(o.type#,1,'INDEX',2,'TABLE' ,3

,'CLUSTER',4,'VIEW',5,'SYNONYM',6,'SEQUENCE','OTHER' )unionselect

'COLUMN',count(*)fromsys.col$unionselect'DBLINK',count(*)from22。按用户查看

object种类

selectu.nameschema,sum(decode(o.type#,1,1,NULL))indexes,sum(decode(o.type#,2,1,NULL))tables,sum(decode(o.type#,3,1,NULL))

clusters,sum(decode(o.type#,4,1,NULL))views,sum(decode(o.type#,5,1,NULL))synonyms,sum(decode(o.type#,6,1,NULL))sequences,sum(decode(o.type#,1,NULL,2,NULL,3,NULL,4,NULL,5,NULL,6,NULL,1))

othersfromsys.obj$o,sys.user$uwhereo.type#>=1andu.user#=o.own

er#andu.name<>'PUBLIC'groupbyu.nameorderbysys.link$unionselect'CONSTRAINT',count(*)fromsys.con$

23。有关connection的相关信息 1)查看有哪些用户连接

selects.osuseros_user_name,decode(sign(48-command),1,to_char(command),

联系合同范文客服:xxxxx#qq.com(#替换为@)