调整闩(latch)和锁定(lock)
1. 调整闩(latch)
闩可以作为内存性能的另一个指标。
1.闩:等待闩和立即闩(V$lacth。共239个)。
数据库中是否存在闩争用V$system_event("latch free")。
几个重要的闩:shared pool、library cache、cache buffers lru chain、
cache buffers chains、redo allocation、redo copy。
select * from V$latch where misses!=0;
2.自由列表:V$system_event("buffer busy waits")。
V$waitstat。
测量哪些段存在自由列表争用:dba_segments、V$session_wait。
alter table scott.emp storage (freelists 5);
自动段空间管理的表空间。
2. 调整锁定
DML锁(TM)和DDL锁(TX)
锁定模式:
RX:对表UPDATE、INSERT、DELETE时获得。
RS:对表SELECT … FOR UPDATE时获得。
S: LOCK TABLE EMP IN SHARE MODE; 可以是多个用户获得。
SRX: LOCK TABLE EMP IN SHARE ROW EXCLUSIVE MODE; 只能是一个用户获得。
外键约束时的锁定。死锁。
用Lock Monitor监视锁定。
调整操作系统
1. 调整操作系统
观察内存和CPU利用率(<90%)。
2. 使用Resource Manager
资源使用者组。一个用户可以是多个资源使用者组的成员,但一次只有一个组是活动的。
确定用户的CPU利用率。(v$sesstat和v$sysstat)
资源计划:由资源计划指令组成。一次只能有一个资源计划是活动的(V$rsrc_plan)。
alter system set resource_manager_plan=system_plan;
select username,RESOURCE_CONSUMER_GROUP from V$session;
子计划。
资源计划调度。
使用Expert进行优化
第一步:创建一个优化会话(tuning session)。
第二步:确定优化范围(scope)。
第三步:收集数据。
第四步:复查(review)已收集到的数据。
第五步:生成建议案。建议报告。
第六步:创建实现建议所需的SQL脚本。[@more@]
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/18921899/viewspace-1017387/
,如需转载,请注明出处,否则将追究法律责任。