暂无图片
Oracle如何选择手动和自动内存管理?
我来答
分享
胡武
2023-01-31
Oracle如何选择手动和自动内存管理?

Oracle如何选择手动和自动内存管理?

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新

默认情况下,是自动PGA内存管理。

最让DBA头疼的一件事就是设置数据库的各个参数,特别像SORT|HASH_AREA_SIZE之类的参数。一些系统中的这些参数的值可能设置得相当小,以至于对性能造成了很大的负面影响,造成这种情况的原因可能是默认值本身就非常小:排序区的默认大小是64KB,散列区的默认大小是128KB。这些值应该多大才合适呢?不仅如此,在一天中的不同时段,可能还需要使用不同的值。例如早上8:00的时候只有两个用户,每个操作50MB的排序区可能很适合他们;到中午12:00,已经有500个用户时,再让每个操作使用50MB的排序区就不合适了。针对这种情况,WORKAREA_SIZE_POLICY=AUTO和相应的PGA_AGGREGATE_TARGET设置就能派上用场了。设置PGA_AGGREGATE_TARGET就是告诉数据库希望它在限制范围内自由分配内存来进行排序和散列,从概念上讲这比研究出一个最佳的SORT|HASH_AREA_SIZE值要容易得多,特别是这类参数其实并没有所谓的最佳值;真正的“最佳值”是会随工作负载而变化的。

暂无图片 评论
暂无图片 有用 7
暂无图片
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏