DB2V9 Linux安裝第一步 修改核心引數

2021-05-22 01:52:18 字數 3271 閱讀 9235

修改核心引數(linux)

在安裝 db2資料庫系統之前,應更新 linux核心引數。當執行 db2 資料庫系統時,linux 上特殊核心引數的預設值可能不能滿足要求。在必要的地方,db2 將根據 db2 資料庫系統的需要,自動提高 ipc 限制。然而,如果有 db2 資料庫系統之外的產品或應用程式,則在 linux 系統上永久地設定限制可能更實際。

先決條件

必須具有 root 使用者許可權才能修改核心引數。

過程 要更新核心引數:

red hat 和 suse linux

以下資訊可以用來確定是否需要對系統進行任何更改。

以下是 ipcs -l 命令的輸出。在 // 後面新增了注釋以指出引數名。

# ipcs -l

------ shared memory limits --------

max number of segments = 4096 // shmmni

max seg size (kbytes) = 32768 // shmmax

max total shared memory (kbytes) = 8388608 // shmall

min seg size (bytes) = 1

------ semaphore limits --------

max number of arrays = 1024 // semmni

max semaphores per array = 250 // semmsl

max semaphores system wide = 256000 // semmns

max ops per semop call = 32 // semopm

semaphore max value = 32767

------ messages: limits --------

max queues system wide = 1024 // msgmni

max size of message (bytes) = 65536 // msgmax

default max size of queue (bytes) = 65536 // msgmnb

從關於 shared memory limits 的第一部分開始,shmmax 和 shmall 就是需要考慮的引數。shmmax 是 linux 系統上共享記憶體段的最大大小,而 shmall 是系統上可分配的共享記憶體頁的最大大小。

對於 shmmax,x86 系統上需要的最小值為 268435456(256 mb),而在 64 位系統上,該值將為 1073741824(1 gb)。

預設情況下,shmall 設定為 8 gb(8388608 kb = 8 gb)。如果您具有的物理記憶體超過該值,並且要將這些物理記憶體用於 db2,則應將此引數增大為大約是對您的計算機所指定的物理記憶體的 90%。例如,假定乙個計算機系統上有 16 gb 記憶體,並將這些記憶體主要用於 db2,則 16 gb 的 90% 為 14.4 gb,將 14.4 gb 除以 4 kb(這是基頁大小)得到的結果為 3774873。ipcs 輸出已將 shmall 轉換為千位元組(kb)。這是因為核心需要將此值作為頁數。

下一節說明了可用於作業系統的訊號量。核心引數 sem 由以下四個標記組成:semmsl、semmns、semopm 和 semmni。semmns 是 semmsl 乘以 semmni 的結果。資料庫管理器要求根據需要增大陣列的數目(semmni)。典型地,semmni 應兩倍於允許的最大連線數(maxagents)乘以資料庫伺服器計算機上的邏輯分割槽數再加上資料庫伺服器計算機上的本地應用程式連線數。

第三部分說明了系統上的訊息。

msgmni 將影響可以啟動的**程序數,msgmax 將影響乙個佇列中可以傳送的訊息大小,而 msgmnb 將影響佇列大小。

在伺服器系統上,應將 msgmax 更改為 64 kb(即,65535 個位元組),msgmnb 應增大為 65535。

要修改這些核心引數,需要編輯 /etc/sysctl.conf 檔案。如果此檔案不存在,則應建立它。下列各行是該檔案中應包含的內容的示例:

kernel.sem=250 256000 32 1024

#示例:用於 64 位系統的 shmmax

kernel.shmmax=1073741824

#示例:用於 16 gb 記憶體的 90% 的 shmall

kernel.shmall=3774873

kernel.msgmax=65535

kernel.msgmnb=65535

執行 sysctl 時附帶 -p 引數,以從預設檔案 /etc/sysctl.conf 中裝入 sysctl 設定(目的是使修改馬上生效)。

sysctl -p

要使更改在每次重新引導之後生效,boot.sysctl 在 suse linux 上必須是活動的(執行該命令,重新啟動系統後也會生效:chkconfig boot.sysctl on)。在 red hat 上,rc.sysinit 初始化指令碼將自動讀取 /etc/sysctl.conf 檔案(不用執行任何命令,重新啟動系統後也會生效)。

我安裝db2時,核心引數修改如下:

kernel.sem=250 256000 32 1024

#示例:512m的 shmmax(修改時換算為位元組:536870912)

kernel.shmmax=536870912

#示例:1 gb 的 shmall(修改時換算為頁數,基頁大小為4k:262144)

kernel.shmall=262144

kernel.msgmax=65535

kernel.msgmnb=65535

獲取linux 記憶體頁(基頁)大小的命令:getconf page_size ,一般的輸出是4096,即 4kb。

Flask第一步,安裝Git

一開始,寫 覺得功能實現了,就完事了。然後每次更新迭代,都是直接在源 上面修改,因為感覺每次都要去複製貼上一次,再開始修改 然後這備份的命名也是想破腦袋,1.0.py 1.5.py。最終就會導致,備份的操作也麻煩,命名麻煩,找的時候也難找到究竟我要回到那個版本來著?忒麻煩了。而且,隨著專案越來越大,...

P2V, 邁出虛擬化的第一步

p2v physical to virtual 是將實體機轉換為虛擬機器的一種技術,是所有企業虛擬化的第一步,但並不是每個企業都能順利進行p2v的。本文從p2v的應用場景出發,為您介紹p2v實施過程中的重點與難點。文 胡嘉璽 小張是公司的it主管,常常要應付老闆對新科技的要求。當虛擬化成為新潮流時,...

學習SilverLight的第一步 安裝

silverlight的確是乙個讓人著迷的東西,但是所有著迷的東西,首先都是要知道是什麼,在 做,怎麼做,這樣才能從抽象到具體,從質上有乙個了解。在安裝silverlight3 tools.exe的時候,如果之前有安裝過silverlight亂七八糟的東西的時候,會提示 正在安裝vs90sp1 kb...