随同 admin() 或 task() 函数,使用 onmode 和 W 参数来更改语句是否以及何时可插入到 SQL 高速缓存。
元素 | 描述 | 关键考虑 |
---|---|---|
hits | 在语句完全地插入到 SQL 语句高速缓冲之前,命中(引用)语句的数目。 | 可能的值为:
|
value | 语句是否插入到 SQL 语句高速缓存中。 | 可能的值为:
|
在数据库服务器处于 online 时,使用这个函数来重置 STMT_CACHE_HITS 或 STMT_CACHE_NOLIMIT 配置参数的值。新的值仅影响数据库服务器的当前实例;该值不记录在 ONCONFIG 文件中。如果您关闭并重启数据库服务器,则参数的值恢复为 ONCONFIG 文件中的值。
如果您设置 STMT_CACHE_HITS 的值等于 0,则数据库服务器在该高速缓存中插入所有满足条件的语句及其内存结构。如果该值大于 0 且 SQL 语句已被执行的次数小于 STMT_CACHE_HITS 的值,则数据库服务器在高速缓存中插入 key-only 条目。在语句已经发生指定的命中数之后,数据库服务器在高速缓存中插入满足条件的语句。新的 STMT_CACHE_HITS 值显示在 onstat -g ssc 输出的 #hits 域中。
如果未分享任何查询,则设置 STMT_CACHE_NOLIMIT 为 0 来阻止数据库服务器为语句高速缓存分配大量内存。
这个函数等同于 onmode -W 命令。
EXECUTE FUNCTION task("onmode","W","STMT_CACHE_HITS","1");