部分Oracle 配置檔案引數含義

流浪的野狼發表於2013-06-14

Oracle vi /etc/sysctl.conf 部分引數含義

kernel.shmall
引數是控制共享記憶體頁數。該引數大小為實體記憶體隊以pagesize;
fs.aio-max-nr
此引數限制併發未完成的請求,應該設定避免I/O子系統故障。
fs.file-max
該引數決定了系統中所允許的檔案控制程式碼最大數目,檔案控制程式碼設定代表linux系統中可以開啟的檔案的數量
kernel.shmmax
是核心引數中最重要的引數之一,用於定義單個共享記憶體段的最大值。設定應該足夠大,能在一個共享
記憶體段下容納下整個的SGA ,設定的過低可能會導致需要建立多個共享記憶體段,這樣可能導致系統效能的
下降。至於導致系統下降的主要原因為在例項啟動以及ServerProcess建立的時候,多個小的共享記憶體段
可能會導致當時輕微的系統效能的降低(在啟動的時候需要去建立多個虛擬地址段,在程式建立的時候要
讓程式對多個段進行“識別”,會有一些影響),但是其他時候都不會有影響。
官方建議值:
32位linux系統:可取最大值為4GB(4294967296bytes)-1byte,即4294967295。建議值為多於記憶體的一
半,所以如果是32為系統,一般可取值為4294967295。32位系統對SGA大小有限制,所以SGA肯定可以包
含在單個共享記憶體段中。
64位linux系統:可取的最大值為實體記憶體值-1byte,建議值為多於實體記憶體的一半,一般取值大於
SGA_MAX_SIZE即可,可以取實體記憶體-1byte。例如,如果為12GB實體記憶體,可取12*1024*1024*1024-
1=12884901887,SGA肯定會包含在單個共享記憶體段中。

kernel.shmmni
該引數是共享記憶體段的最大數量。shmmni預設值4096,一般肯定是夠用了。

kernel.sem
以kernel.sem = 250 32000 100 128為例:
250是引數semmsl的值,表示一個訊號量集合中能夠包含的訊號量最大數目。
32000是引數semmns的值,表示系統內可允許的訊號量最大數目。
100是引數semopm的值,表示單個semopm()呼叫在一個訊號量集合上可以執行的運算元量。
128是引數semmni的值,表示系統訊號量集合總數。

fs.file-max = 65536
該引數決定了系統中所允許的檔案控制程式碼最大數目,檔案控制程式碼設定代表linux系統中可以開啟的檔案的數量

net.ipv4.ip_local_port_range
 表示應用程式可使用的IPv4埠範圍。

net.core.rmem_default
表示套接字接收緩衝區大小的預設值。

net.core.rmem_max
表示套接字接收緩衝區大小的最大值。

net.core.wmem_default
表示套接字傳送緩衝區大小的預設值。

net.core.wmem_max
表示套接字傳送緩衝區大小的最大值。

 

SGA_TARGET指定SGA可以使用最大記憶體大小。,而SGA中各個記憶體的大小由Oracle自行控制,不需要人為

設定
設定SGA_TARGET之後啟動ASSM特性之後,
Buffer cache(DB_CACHE_SIZE)
Shared pool(SHARED_POOL_SIZE)
Large pool(LARGE_POOL_SIZE)
Streams pool(STREAMS_POOL_SIZE)

安裝oracle 時vi /etc/security/limits.conf檔案中以下函式含義
oracle soft nproc 2047

oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack   10240
出於效能上的考慮,還需要需要進行如下的設定,以便改進Oracle使用者的有關 nofile(可開啟的檔案描述
符的最大數)和nproc(單個使用者可用的最大程式數量)
soft是軟限制 ,使用者可以超過這個設定的值,但一定不能超過hard 的值 。一般soft比hard小。
hard是硬限制

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28612416/viewspace-763940/,如需轉載,請註明出處,否則將追究法律責任。

相關文章