在网上找个一个发现关于server process的文献真少,大多都是讲background_process的,其实server process在实际工作中还是挺重要的,尤其在对pga的调优的时候,你必须要理解server process的工作机制
server process 是数据库端用于为客户端user process的提供服务的一个进程(在专有服务器模式dedicate server下,每个session会对应一个server process),pga就是为server process服务的
1、查看server process
①我们可以通过ps -ef|grep LOCAL去查看这些server process
以上这些进程都是server process (命名的规则ORACLE+SID)
②select spid,program,pga_max_mem,pga_alloc_mem,pga_used_mem,pga_freeable_mem,addr from v$process
通过这句话我们也能看见server process的相关的信息,包括相应的pga的使用情况
-------------------------------------------------------------------------------------------------------------------------------------------------
2、通过杀死server process 来停止对应的session
select sid,serial,paddr from v$session where username='LOGIN'; ------找到你要想停止的session的paddr
select spid,program,pga_max_mem,pga_alloc_mem,pga_used_mem,pga_freeable_mem,addr from v$process where addr=上面的paddr; -----拿到spid
kill -9 spid