Oracle学习笔记--系列一(14)

(14)如何设置shared pool及SGA的大小

在这里插入图片描述

视频链接:
https://www.bilibili.com/video/BV1Zt411w7eQ?p=16&spm_id_from=pageDriver

1、查看执行计划

select sql_id,sql_text from v$sql where sql_text like '%count%';
select * from table(dbms_xplan.display_cursor('07hpk6hpb7pp8'));

07hpk6hpb7pp8为sql_id

2、在Oracle10g中允许有多个sub shared pool,可以设置大于1G的shared pool

设置shared pool的大小

SQL> SELECT 'Shared Pool' component,sharod_pool_size_for_  estimate estd_sp_size,estd_lc_time_saved_factor parse_time_ factor,
CASE
WHEN current_parse_time_elapsed_s + adiustment_s < 0
THEN 0
ELSE
current_parse_time_elapsed_s + adiustment_s
END response_time
FROM (SELECT
shared_pool_size_for_estimate,shared_pool_size_factor, estd_lc_time_saved_factor,a.estd_lc_time_saved,e.VALUE/100
current_parse_time_elapsed_s,c.estd_lc_time_saved - a.estd_lc_ time_saved adiustment_s FROM v$shared_pool_advice a,(SELECT * FROM v$sysstat 
WHERE NAME = 'parse time elapsed' ) e,(SELECT estd_lc_time _saved FROM v$shared_pool_advice WHERE shared_pool_size_factor= 1)c);

在这里插入图片描述

不同的shared pool尺寸下,具体的响应时间
按照以上的结果,设成164M就好了。

在这里插入图片描述

SELECT
shared_pool_size for_estimate "SP",estd_lc_size"EL",
estd_1c_memory_objects "ELM",estd_1c_time_saved "ELT",
estd_1c_time_saved_factor "ELTS",
estd_lc_memory_object_hits "ELMO" FROM  v$shared_pool_advice;

上一篇:Oracle学习笔记–系列一(13)

猜你喜欢

转载自blog.csdn.net/Ruishine/article/details/120785849