一、
共享服務器初始化參數
?
?
??? DISPATCHERS:配置調度程序進程
??? MAX_DISPATCHERS:指定同時運行的調度程序進程最大數目
?
??? 用于設置調度程序的起始數目,初始化文件可以指定多個DISPATCHERS參數,但必須是彼此相鄰的。Oracle內部為每個DISPATCHERS參數分配一個INDEX索引值,以方便之后使用ALTER SYSTEM語句時明確引用某個DISPATCHERS參數。
?
??? 對一般系統來說,每1000個連接分配1個調度程序,運轉好的話再多一些。太多的調度程序會降低系統性能,所以要實現估計好連接數。
?
??? 舉例:
??? DISPATCHERS = "(PROTOCOL = TCP)" --基本參數
??? DISPATCHERS = "(ADDRESS = (PROTOCOL = TCP)(HOST = 10.2.1.81)) (DISPATCHERS = 2)" --強調IP
??? DISPATCHERS = "(ADDRESS = (PROTOCOL = TCP)(PORT = 5000))"?--強調端口
?
?
?
??? SHARED_SERVERS:指定啟動實例時可創建的共享服務器進程數
??? MAX_SHARED_SERVERS:指定可以同時運行的共享服務器進程最大數目
?
??? 指定了啟動時希望創建的共享服務進程的數目。Oracle會在SHARED_SERVERS和MAX_SHARED_SERVERS之間的數目中,根據請求隊列的長度動態調整共享服務器的數目。一般來說,10個連接分配一個共享服務器。
?
??? MAX_SHARED_SERVERS是一個靜態初始參數,但SHARED_SERVERS是動態參數,可以使用ALTER SYSTEM語句修改。
?
??? CIRCUTTS:進出網絡會話時可以利用的虛擬回路總數
?
??? SHARED_SERVER_SESSIONS:用戶會話允許的共享服務器總數,可以為專門服務器保留用戶會話
?
??? LARGE_POOL_SIZE:指定大型存儲池分配字節大小
?
??? SESSIONS:系統可創建的最大會話數目
?
?
二、修改調度程序和服務器進程
?
?
??? 1、調度進程
?
??? 可通過V$QUEUE、V$DISPATCHER、V$DISPATCHER_RATE來查看
?
??? 通過ALTER SYSTEM修改DISPATCHERS參數值
?
??? ALTER SYSTEM SET DISPATCHERS =
??? '(PROTOCOL = TCP)(DISPATCHERS = 5)(INDEX = 0)',
??? '(PROTOCOL = TCPS)(DISPATCHERS = 2)(INDEX = 1)';
?
??? 注1:DISPATCHERS:是參數;DISPATCHERS=5 才是調度進程個數;
??? 注2:INDEX用于識別DISPATCHERS參數,從0到n依次排列,即V$DISPATCHER中的CONF_INDX值
?
?
??? 2、關閉調度進程
?
??? 首先要查詢到DISPATCHERS的NAME:
?
??? SELECT NAME,NETWORK FROM V$DISPATCHER;
?
??? 然后關閉調度進程:
?
??? ALTER SYSTEM SHUTDOWN IMMEDIATE 'D000';
?
??? 更改共享服務器進程最少數目:
?
??? ALTER SYSTEM SET SHARED_SERVERS = 2;
?
?
??? 3、監視共享服務器
?
??? V$DISPATCHER:提供有關調度程序進程的信息;
??? V$DISPATCHER_RATE:提供調度程序進程的速率統計表;
??? V$QUEUE:包含有關共享服務器的消息隊列的信息;
??? V$SHARED_SERVER:包含有關共享服務器進程的信息;
??? V$CIRCUIT:包含有關虛擬回路的信息;
??? V$SHARED_SERVER_MONITOR:包含協調共享服務器的信息;
??? V$SGA:包含各個系統全局區(SGA)組的容量信息;
??? V$SGASTAT:關于DGA的詳細統計信息,用于協調共享服務器;
??? V$SHARED_POOL_RESERVED:共享存儲池的信息
?
?
?
-The End-