專用服務器(dedicared):每個用戶進程對應一個服務器進程
共享服務器(share):多個客戶端連接(用戶進程)對應一個服務器進程,服務器端存在一個進程調度起來管理。它必須使用net service,也就是說必須配置tns。它適合用於高併發,事物量小,如果這個時候採用了共享模式,可以大大減少由於高度併發對於ORACLE服務器的資源消耗
SQL> select server,count(*) from v$session where username is not null group by server;
SERVER COUNT(*)
--------- ----------
DEDICATED 4
SQL> show parameter shared_server
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
max_shared_servers integer
shared_server_sessions integer
shared_servers integer 1
將tnsnames.ora中的SERVER改爲SHARED
SQL> show parameter dispatchers
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
dispatchers string (PROTOCOL=TCP) (SERVICE=enmo1X
DB)
max_dispatchers integer
配置共享服務器
SQL> alter system set max_shared_servers = 10;
System altered.
SQL> alter system set dispatchers='(PROTOCOL=TCP) (dispatchers = 3)(session = 200)';
System altered.
配置共享連接
SQL> select server from v$session where username is not null;
SERVER
---------
DEDICATED
SHARED
SHARED
DEDICATED