Global PLsql Cache特性参数
enable_global_plsqlcache
参数说明:设置是否对package、存储过程、函数的编译产物进行全局缓存,并对执行产物进行session级缓存,开启该功能可以节省高并发下数据库节点的内存使用。多租数据库特性(enable_mtd)需要关闭该参数。
参数类型:布尔型
参数单位:无
- on:表示对编译产物进行全局缓存。
- off:表示不进行全局缓存。
默认值:on
设置方式:该参数属于POSTMASTER型参数,请参考表1中对应设置方法进行设置。
设置建议:存储过程及包对象较多且并发较高时建议打开,以节省内存。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
max_execute_functions
参数说明:该参数用于定义session内存储过程、函数的执行产物的最大个数。当执行产物个数大于max_execute_functions时,系统将对执行产物进行清理,保留最近调用的max_execute_functions个执行产物。当且仅当enable_global_plsqlcache参数取值为on时,该参数设置有效。
参数类型:整型
参数单位:无
取值范围:1 ~ 2147483647
默认值:1000
设置方式:该参数属于POSTMASTER型参数,请参考表1中对应设置方法进行设置。
设置建议:建议根据系统内存大小设置合理值,内存越大可以设置的取值越大。
设置不当的风险与影响:设置太小,可能会影响性能。
max_compile_packages
参数说明:设置服务器存储的PACKAGE编译结果的最大数量。
参数类型:整型
参数单位:无
取值范围:0 ~ 2147483647,0表示不开启该功能,不控制PACKAGE编译结果的最大数量。不同规格下该参数取值可以适当调整,可以根据计算公式(max_process_memory * 2%)/ 4.4MB 然后向下取整得到推荐值。
4.4MB是根据实验室模拟统计得到的平均值,实际场景仍需要观察,如果该经验值不符合实际场景,需要重新调整该值以调整存储过程对内存的占用。
默认值:
不同规格默认值:(max_process_memory * 2%)/ 4.4MB 向下取整
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:存储过多的PACKAGE的编译结果可能占用很大内存,将此参数设置为一个合理的值,有助于减少内存占用,提升系统性能。
设置不当的风险与影响:设置太小,会导致全局缓存频繁淘汰,可能会影响性能。