oracle中的processes,session,transaction参数详解

Oracle数据库中processes,sessions,transactions分别代表进程数、会话数及当前最大允许的交易量。

按照官方文档中描述,他们之间是有关系的。


以下是11.2.0.4数据库版本(一会儿测试也是11.2.0.4版本)

sessions=(1.5*processes)+22

transactions=1.1*sessions


在10g版本中

sessions=(1.1*processes) +5

transactions=1.1*sessions


我们在修改的时候,不用特意修改session和transaction的值。在修改processes值的时候,会自动修改session和transactions的参数。


如下:

SQL> show parameter processes



NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

processes                            integer     300

SQL> show parameter sessions



NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

sessions                             integer     472

shared_server_sessions               integer

SQL> show parameter transactions



NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

transactions                         integer     519

transactions_per_rollback_segment    integer     5

SQL> 



SQL> alter system set processes=400 scope=spfile;


System altered.


SQL> startup force

ORACLE instance started.


Total System Global Area  835104768 bytes

Fixed Size                  2257840 bytes

Variable Size             591400016 bytes

Database Buffers          239075328 bytes

Redo Buffers                2371584 bytes

Database mounted.

Database opened.

SQL> 



SQL> 

SQL> 

SQL> show parameter processes


NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

processes                            integer     400


SQL> show parameter sessions


NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

sessions                             integer     622

shared_server_sessions               integer

SQL> show parameter transactions



NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

transactions                         integer     684

transactions_per_rollback_segment    integer     5

SQL> 



可以看到,修改processes参数之后,sessions参数和transaction参数在重启后自动调整了。


但是如果修改sessions参数,则重启之后,processes参数不会变化,transaction参数会随之改变。

同样,如果修改transactions参数,sessions参数和processes参数也不会变化


请使用浏览器的分享功能分享到微信等