您的位置:首页 > 其它

关于 x$ksmsp 视图中KSMCHDUR 字段代表什么意思

2014-11-20 17:02 405 查看

请教关于 x$ksmsp视图字段含义





957918 2012-9-1 上午2:04

ML 您好:

关于 x$ksmsp 视图:

desc x$ksmsp

Name Null? Type

------------------------ -------- ----------------

ADDR RAW(8)

INDX NUMBER

INST_ID NUMBER

KSMCHIDX NUMBER

KSMCHDUR NUMBER

KSMCHCOM VARCHAR2(16)

KSMCHPTR RAW(8)

KSMCHSIZ NUMBER

KSMCHCLS VARCHAR2(8)

KSMCHTYP NUMBER

KSMCHPAR RAW(8)

其中 KSMCHIDX ,KSMCHDUR 字段代表什么意思?

谢谢!

27 查看

标签:

ask_maclean
带有 ask_maclean 标记的内容
,
oracle数据库官方中文技术论坛
带有 oracle数据库官方中文技术论坛 标记的内容

[b]1.

Re: 请教关于 x$ksmsp视图字段含义
[/b]





LiuMaclean(刘相兵)
2012-9-1 上午2:32 (回复 957918

KSMCHIDX 只是一个索引 基本没有用处

KSMCHDUR 指定了chunk的duration, 这个特性是10g以后加入的,见

Know more about shared pool subpool
http://www.askmaclean.com/archives/know-more-about-shared-pool-subpool.html
10g共有4种duration 如引文:

SQL> select distinct KSMCHDUR from x$ksmsp;

KSMCHDUR
----------
1
2
3
4

@@

@@

*<font color="red" size="2" face="courier">如果觉得本回复有意义,请点击本条回复右手边的Correct按钮,谢谢!</font>*

@@

@@

如何在OTN中文技术论坛提一个问题?

论坛礼仪需知及学习oracle的方法论

@@

@@

Maclean Liu

Oracle Database Administrator

Oracle Certified 10g/11g Master

www.askmaclean.com

喜爱
显示 0 喜欢
(0)

操作

[b]2.

Re: 请教关于 x$ksmsp视图字段含义
[/b]





LiuMaclean(刘相兵)
2012-9-1 上午2:37 (回复 957918

补充一下 可以用_enable_shared_pool_durations 禁用10g duration 这一特性

SQL> select distinct KSMCHDUR from x$ksmsp;

KSMCHDUR
----------
1
2
3
4

SQL> alter system set "_enable_shared_pool_durations"=false scope=spfile;

System altered.

SQL> startup force;
ORACLE instance started.

Total System Global Area 1252663296 bytes
Fixed Size 2254784 bytes
Variable Size 872417344 bytes
Database Buffers 369098752 bytes
Redo Buffers 8892416 bytes
Database mounted.
Database opened.
SQL>
SQL>
SQL> select distinct KSMCHDUR from x$ksmsp;

KSMCHDUR
----------
1


喜爱
显示 0 喜欢
(0)

操作

[b]3.

Re: 请教关于 x$ksmsp视图字段含义
[/b]





957918
2012-9-1 上午2:42 (回复 LiuMaclean(刘相兵)

引用 ML sub_pool 文章:

duration 分成4类:

Session duration

Instance duration (never freed)

Execution duration (freed fastest)

Free memory

引入了 shared pool duration的目的是

在10gR1中Shared Pool的shrink收缩操作存在一些缺陷,造成缺陷的原因是在该版本中Buffer Cache还没有能力共享使用一个granule,这是因为Buffer Cache的granule的尾部由granule header和Metadata(可能是buffer header或者RAC中的Lock Elements)拼接组成,在其尾部不容许存在空洞。另一个原因是当时的shared pool允许不同生命周期duration(以后会介绍)的chunk存放在同一个granule中,这造成共享池无法完全释放granule。到10gR2中通过对Buffer
Cache Granule结构的修改允许在granule header和buffer及Metadata(buffer header或LE)存在缝隙,同时shared pool中不同duration的chunk将不在共享同一个granule,通过以上改进buffer cache与shared pool间的内存交换变得可行。此外在10gr2中streams pool也开始支持内存交换(实际根据不同的streams pool duration存在限制)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: