9i中mts_dispatchers和mts_max_dispatchers虽已过时, 但还保留. 通过SYSMOD一列可以看出, MAX_DISPATCHERS参数和MAX_SHARED_SERVERS参数不能在SYSTEM一级动态修改. 另外在9i中DISPATCHERS参数不能改成空的值.
ASQL> ora parameter dispatchers
NAME ISDEFAULT SESMOD SYSMOD VALUE
------------------- --------- ------ --------- -----
dispatchers TRUE FALSE IMMEDIATE
mts_dispatchers TRUE FALSE IMMEDIATE
max_dispatchers TRUE FALSE FALSE 5
mts_max_dispatchers TRUE FALSE FALSE 5
4 rows returned.
ASQL> ora parameter shared_servers
NAME ISDEFAULT SESMOD SYSMOD VALUE
------------------ --------- ------ --------- -----
shared_servers TRUE FALSE IMMEDIATE 0
max_shared_servers TRUE FALSE FALSE 20
2 rows returned.
SQL> alter system set dispatchers='';
alter system set dispatchers=''
*
ERROR at line 1:
ORA-00101: invalid specification for system parameter DISPATCHERS
10g中mts_dispatchers和mts_max_dispatchers已经看不到了. 通过SYSMOD一列可以看出, MAX_DISPATCHERS参数和MAX_SHARED_SERVERS参数也可以动态修改了. DISPATCHERS参数也可以改成空值了. 说明在10g上转成MTS模式就不需要重启数据库了.
ASQL> ora parameter shared_servers
NAME ISDEFAULT SESMOD SYSMOD VALUE
------------------ --------- ------ --------- -----
shared_servers TRUE FALSE IMMEDIATE 5
max_shared_servers TRUE FALSE IMMEDIATE 20
2 rows returned.
ASQL> ora parameter dispatchers
NAME ISDEFAULT SESMOD SYSMOD VALUE
--------------- --------- ------ --------- -----------------
dispatchers FALSE FALSE IMMEDIATE (PROTOCOL=TCP)...
max_dispatchers TRUE FALSE IMMEDIATE 5
SQL> alter system set dispatchers='';
System altered.
在并发连接数很多的数据库上, MTS模式也可以列入考虑.