使用oracle经验,ORACLE应用经验(2)

本文出自: 作者: (2001-08-13 08:00:00)

------谁正在访问数据库?

Select c.sid, c.serial#,c.username,a.object_id,b.object_name,

c.program,c.status,d.name,c.osuser

from v$Locked_object a,

All_objects b,

v$session c,

audit_actions d

where a.object_id=b.object_id

and a.session_id =c.sid(+)

and c.command=d.action;

alter system kill session '&1,&2';

Select a.sid,a.serial#,a.username,a.status,a.program,b.name,a.osuser

from v$session a,audit_actions b

where a.command=b.action

And username='&1';

------谁被锁住?

Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name

from v$session a,audit_actions b

where a.command=b.action

AND LOCKWAIT IS NOT NULL;

------谁在锁表?

Select a.sid,a.serial#,a.username,A.LOCKWAIT,a.status,a.program,b.name

from v$session a,audit_actions b

where a.command=b.action

AND STATUS='ACTIVE';

Select sid, serial#, object_name, row_wait_block#,

row_wait_row#, row_wait_file#

from all_objects, v$session

where row_wait_obj#=object_id and type='USER'

and lockwait is not null ;

Select sl.username, sl.sid, sl.serial#

from v_$lock l1, v$session s1

where exists (select * from v_$lock l2, v$session s2

where l2.sid=s2.sid and l2.id1=l1

and s2.lockwait=l2.kaddr

and request=0

and l1.sid=s1.sid) ;

select count(*) from v$session;

select count(*) from sys.v_$process;

select count(*) from sys.v_$transaction;

ZYP_35.98

------查看哪些包要固定

COLUMN OWNER FORMAT A10

Select owner, name, type,

source_size+code_size+parsed_size+error_size BYPES

from dba_object_size

where type='PACKAGE BODY' ORDER BY 4 DESC ;

------查看一个用户拥有哪些表空间的实体信息:

Select tablespace_name, owner, segment_name,segment_type

from dba_segments

where owner-'SyS'

and segment_type_-'ROLLBACK'

order by tablespace_name, owner, segment_name ;

break on owner on segment_name

COLUMN segment_name FORMAT A15

cOLUMN tablespace_name FORMAT A15

COLUMN file_name FORMAT A20

SELECT A.owner, a.segment_name, b.tablespace_name, b.file_name,

sum(a.bytes) bytes

from dba_extents a, dba_data_files b

where a.file_id-b.file_id group by a.owner, a.segment_name,

b.tablespace_name, b.file_name ;

------看内存缓冲区使用效率的指数是命中率HITS:

Hits=Logical_reads/(logical_reads+physical_reads)

其中:logical_reads=db_block_gets+consistent_reads

select cur.value db, con.value con, phy.value phy,

(cur.value+con.value)/cur.value+con.value+phy.value)*100 HITS

from v$sysstat cur, v$sysstat con, v$sysstat phy

where CUR.NAME='db block gets' AND

CON.NAME='consistent gets' AND

PHY.NAME='physical reads' ;

------如何检测ROLLBACK SEGMENT竞争?

select class, count from v$waitstat

where class in

('system undo header', 'system undo block',

'undo header', 'undo block') ;

select sum(value) from v$sysstat where name in

('db block gets', 'consistents gets') ;

若count/sum(value)大于1%,则应考虑增加ROLLBACK SEGMENT

------查看有事务在哪几个回退段中:

COLUMN u FORMAT A15

COLUMN s FORMAT A15

COLUMN s FORMAT A80

select osuser o, username u, segment_name s, sa.sql_text

from v$session s, v$transaction t, dba_rollback_segs r, v$sqlarea sa

where s.taddr=t.addr and t.sidusn=r.segmant_id(+)

and s.sql_address=sa.address(+) ;

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!

免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值