oracle-PGA

1PGA作用
私有全局区
每个进程都有一个PGA,包括server process和后台进程
2 PGA 构成
在这里插入图片描述
pga空间其实就是会话的工作区,也就是sql的工作区
sql工作区是最重点的,他的构成:
oracle-PGA_第1张图片
包括排序、位图、哈希。。。
排序区
如果sql语句没有排序,pga基本没作用,传递一下取出的数据,但当有order by时,数据从buffercache中先都到pga中先排序,缓存,再返回给用户,当需要的空间很大,sort_area_size就会增加,当用完后,就释放
哈希区
对于多表哈希连接,用哈希区
pga管理方式
1自动:只要为整个PGA分配一个大的空间,session自己申请
2 手动(不用了)手动的为每个session设置上面的几个区的大小,手动设置意味着每个session都有这么多区域。当分配的区域不够用时,用tmp文件(将文件写在磁盘的tmp上),非常影响速度。
自动设置
在这里插入图片描述
默认是auto
PGA的大小一般设置为物理内存的80%再乘以0.2
在这里插入图片描述
重要视图
oracle-PGA_第2张图片

你可能感兴趣的:(oracle,数据库)