问个数据库的问题oracle中sga和pga分配的大小 和 oracle.exe进程在操作系统里占用的内存大小 二者之间有什么关系?
1).首先,题主说的是oracle.exe进程,这个描述很准确,且可看得出是针对windows环境下的oracle。
windows环境是下,oracle在系统中的体现主要只有oracle.exe单个进程,但是,这单个进程中,其余的进程分别以线程的方式体现。这个可以使用oracle自带的工具查看每个线程的ID号以及名称等详细信息。
2)oracle.exe进程所占用的操作系统的内存大小,一部分为oracle后台进程(在windows下体现为多个单独的线程)也就是题主问的PGA部分。
且PGA会动态变化的,并不是一直不变,这里还有一个误区,SGA是在实例启动时就已经分配好了,但是这个分配的,是虚拟内存,而任务管理器或者资源管理中看到的,只是实际使用的活动的SGA是,会随着SGA的大小变化。
3)有关这部分的详细内容,建议参看Oracle Concepts.
收起