简述Oracle中v$process和v$session

process:这个参数限制了能够连接到SGA的操作系统进程数(或者是Windows 系统中的线程数),这个总数必须足够大,从而能够适用于后台进程与所有的专用服务器进程,此外,共享服务器进程与调度进程的数目也被计算在内.此外,共享服务器进程与调度进程的数目也被计算在内.因此,在专用服务器环境中,这是一种限制并发连接数的方法。

Oracle提供了相应的视图v$process用来监视整个数据库的进程情况。

v$process进程中的SPID提供了每个进程对应的操作系统的PID,因此如果监控某个操作系统的PID有异常,可以通过这个视图去查找相应的SQL语句。

v$process和v$session的关系

oracle的连接数(sessions)与其参数文件中的进程数(process)相关,它们的关系如下:sessions=(1.1*process+5),如果资源允许,而当前process 数过小,那么可以适当增大processs 数,( session 数依赖于process数,一般不去直接修改session数)。

Shared Server中的Process 一个对应着Oracle 中的一个或者一个以上的Session。Dedicated Server中,一个session对应一个process,但是一个process未必对应一个session。

如何 修改v$process和v$session参数

参考另一篇博客:https://blog.csdn.net/wh445306/article/details/102547991

   以上的v$process和v$session参数的设置只是经验值(个人实验用途,单机连接XE版),但是在实际的运行过程由于业务或者架构的改变可能实际的系统的session数量和process数量超过了v$process和v$session参数的值,直接导致后面连接的用户登录不了;

查看当前session配置:show parameter sessions;

查看当前process配置:show parameter processes;

修改参数:alter system set processes=1000 scope=spfile;该参数重启系统或服务后生效;

posted @ 2022-10-04 00:14  IT情深  阅读(331)  评论(0编辑  收藏  举报