由於信號是一種全域性的作業系統資源,因此配置需要顧及主機上執行的所有程序,而不只是 HADB 而已。在 Solaris 上,可以編輯 /etc/system 檔案來配置信號設定。
以超級使用者身份登入。
配置共用記憶體。
設定 shminfo_shmmax 以指定主機上單一共用記憶體區段的最大大小。將這個值設定為 HADB 主機電腦上安裝的 RAM 總數,值是以十六進位值表示,不得超過 2 GB。
例如,以 2 GB 的 RAM 來說,請在 /etc/system 檔案中將值設定如下:
set shmsys:shminfo_shmmax=0x80000000 |
若要確定主機電腦上的記憶體量,請使用以下指令︰
prtconf | grep Memory |
在 Solaris 8 或更低的版本中,請設定 shminfo_shmseg,這是每個程序可以附加的最大共用記憶體區段數。請將這個值設為每台主機節點數的 6 倍。若每台主機的節點數不超過 6 個,請在 /etc/system 檔案中增加以下指令:
set shmsys:shminfo_shmseg=36 |
在 Solaris 9 以及更高版本中,shmsys:shminfo_shmseg 已停用。
設定 shminfo_shmmni,這是全系統的最大共用記憶體區段數。由於每個 HADB 節點都會配置 6 個共用記憶體區段,因此 HADB 需要的記憶體值必須至少是每個主機節點數的 6 倍。在 Solaris 9 中,若每台主機的節點數不超過 6 個,就不需要更改預設值。
配置信號。
請在 /etc/system 檔案中檢查如下的信號配置項目:
set semsys:seminfo_semmni=10 set semsys:seminfo_semmns=60 set semsys:seminfo_semmnu=30 |
如果有上述項目存在,請依以下指示調高其值。
如果 /etc/system 檔案不包含這些項目,請將它們增加至檔案的結尾處︰
設定 seminfo_semmni,這是信號識別碼的最大數目。每個 HADB 節點都需要有一個信號識別碼。在 Solaris 9 中,若每台主機的節點數不超過 6 個,就不需要更改預設值。例如︰
set semsys:seminfo_semmni=10 |
設定 seminfo_semmns,這是全系統的最大信號數目。每個 HADB 節點都必須有 8 個信號。在 Solaris 9 中,若每台主機的節點數不超過 6 個,就不需要更改預設值。例如︰
set semsys:seminfo_semmns=60 |
設定 seminfo_semmnu,這是系統內還原結構的最大數目。每個連線都需要一個還原結構 (配置變數 NumberOfSessions,預設值 100)。若每台主機的節點數不超過 6 個,將其設為 600:
set semsys:seminfo_semmnu=600 |
重新開機。