关于shared pool的深入探讨(二) Sunday, 2004-08-22 21:23 Eygle | ||||||
<!--DWLayoutEmptyCell--> |
link: http://www.eygle.com/internal/shared_pool-2.htm
我们继续把前面的问题展开一下.
其实我们可以从数据库内部监控shared pool的空间碎片情况. X$KSMSP的名称含义为: [K]ernal [S]torage [M]emory Management [S]GA Hea[P] 首先记录一下测试环境:
我们看一下x$ksmsp的结构:
我们关注以下几个字段: KSMCHCOM是注释字段,每个内存块被分配以后,注释会添加在该字段中. x$ksmsp.ksmchcls列代表类型,主要有四类,说明如下: free recr freeabl perm 我们可以通过查询x$ksmsp视图来考察shared pool中存在的内存片的数量 我们看一下测试:
这就是由于shared pool中进行sql解析,请求空间,进而导致请求free空间,分配、分割 由此我们可以看出,如果数据库系统中存在大量的硬解析,不停请求分配free的shred pool内存 我们看以下测试:
我们简单分析一下以上结果: 在下面的部分中,我会着手介绍一下KGL handles, KGLS heap这两个非常重要的shared pool中的内存结构. |
关于shared pool的深入探讨(二)
最新推荐文章于 2022-06-08 16:56:48 发布