高速缓存的初始、最小和最大大小都可以通过数据库服务器命令行进行控制。
初始高速缓存大小 您可以使用 -c 数据库服务器选项指定用于数据库服务器的初始高速缓存大小。如果没有指定 -c 选项,数据库服务器将计算初始高速缓存分配。请参见-c dbeng12/dbsrv12 服务器选项。
最大高速缓存大小 您可以通过指定数据库服务器 -ch 选项控制最大高速缓存大小。其缺省值基于由计算机上的物理内存决定的启发式算法。在 Windows Mobile 上,缺省的最大高速缓存大小是可用的程序内存量减去 4 MB。在其它非 Unix 计算机上,缺省值大概是最大非 AWE 高速缓存大小和计算机物理内存的 90% 二者中的较低者。在 Unix 中,缺省的最大高速缓存大小的计算方法如下:
在 32 位 Unix 平台上,它是总物理内存的 90% 或 1,834,880 KB 的较小者。
在 64 位 Unix 平台上,它是总物理内存的 90% 和 8,589,672,320 KB 的较小者。
最小高速缓存大小 您可以通过指定数据库服务器 -cl 服务器选项来控制最小高速缓存大小。缺省情况下,最小高速缓存大小与初始高速缓存大小相同(Windows Mobile 除外)。Windows Mobile 上的缺省最小高速缓存大小为 600 KB。
如果指定了 -c 选项而未指定 -cl,则最小高速缓存大小将设置为由 -c 服务器选项指定的初始高速缓存大小。
如果未设置 -c 或 -cl 服务器选项,最小高速缓存大小将设置为一个非常低的硬编码常量值,以便高速缓存可根据需要进行压缩。在 Windows 中,该值为 2 MB,在 Unix 中,该值为 8 MB,而在 Windows Mobile 中,该值为 600 KB。
您也可以使用 -ca 0 服务器选项来禁用动态调整高速缓存大小的功能。
下面的数据库服务器属性可返回有关数据库服务器高速缓存的信息:
CurrentCacheSize 返回当前高速缓存大小(以千字节为单位)。
MinCacheSize 返回所允许的最小高速缓存大小(以千字节为单位)。
MaxCacheSize 返回所允许的最大高速缓存大小(以千字节为单位)。
PeakCacheSize 返回高速缓存在当前会话中已达到的最大值(以千字节为单位)。
有关获取服务器属性值的信息,请参见数据库服务器属性。
![]() |
使用DocCommentXchange 讨论此页。
|
版权 © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |