oracle系統核心引數優化

2021-08-01 15:21:41 字數 3112 閱讀 3825

核心引數優化

參考《oracle dba工作筆記》

1、fs.aio-max-nr

可以同時擁有的非同步io請求的數目,oracle推薦1048576(1024x1024),也就是1024k。

[root@11g ~]# cat /proc/sys/fs/aio-max-nr

1048576

這個引數表示系統所有程序可以開啟的檔案數量。如果得到控制代碼不足的錯誤資訊,應該是這個值設定的太小,需要增大。

2、kernel.shmmax

它定義了乙個linux程序能分配虛擬位址空間的單個共享記憶體段的大小(位元組為單位)。

[root@11g ~]# cat /proc/sys/kernel/shmmax 

1310720000

oracle的建議是希望乙個大的共享記憶體段能容納整個sga,這樣在任何時候都不會有效能下降的隱患。

使用ipcs -m能夠看到共享記憶體段的分配情況。

[root@11g ~]# ipcs -m

------ shared memory segments --------

key        shmid      owner      perms      bytes      nattch     status      

0x00000000 917504     root       600        393216     2          dest         

0x00000000 950273     root       600        393216     2          dest         

0x00000000 983042     root       600        393216     2          dest         

0x00000000 1015811    root       600        393216     2          dest         

0x00000000 3244036    oracle     640        16777216   27                      

0x00000000 3276805    oracle     640        1241513984 27                      

0x42e38fd0 3309574    oracle     640        2097152    27                      

0x00000000 3178503    root       600        393216     2          dest         

0x00000000 1048586    root       600        393216     2          dest         

0x00000000 1081355    root       600        393216     2          dest         

0x00000000 1114124    root       600        393216     2          dest         

0x00000000 1146893    root       600        393216     2          dest         

0x00000000 1179662    root       600        393216     2          dest         

0x00000000 1212431    root       600        393216     2          dest         

0x00000000 1245200    root       600        393216     2          dest         

0x00000000 1277969    root       600        393216     2          dest         

0x00000000 1310738    root       600        393216     2          dest         

0x00000000 1343507    root       600        393216     2          dest         

0x00000000 1376276    root       600        393216     2          dest         

0x00000000 1736725    root       600        393216     2          dest         

0x00000000 1605654    root       600        393216     2          dest         

0x00000000 1638423    root       600        393216     2          dest         

0x00000000 2097176    root       600        393216     2          dest   

3、kernel.shmall

這個引數表示配置系統一次能夠使用的最大共享頁面數,該引數的值基於ceil(shmmax/page_size)

[root@11g ~]# getconf page_size

4096

除非用了big pages或huge pages,page_size通常為4096byte.

檢視方法如下

[root@11g ~]# cat /proc/sys/kernel/shmall

2097152

如果該值太小,會遇到下面問題

ora-27102:out of memory

4、kernel.shmmni

該引數用於設定共享記憶體段的總個數,即總共可以開闢多少個共享記憶體段。對於oracle 11g,oracle建議至少4096.

5、kernel.sem

這個引數成為訊號量或訊號燈,是乙個非負整數計數器,通常用來協調對資源的訪問。

核心引數優化

核心引數優化 vi sysctl.conf 增加以下配置 net.ipv4.netfilter.ip conntrack tcp timeout established 1800 net.ipv4.ip conntrack max 16777216 如果使用預設引數,容易出現網路丟包 net.ipv...

CentOS6 8系統核心引數優化

系統核心如下 centos6.8 root localhost uname a linux localhost.localdomain 2.6.32 642.el6.x86 64 1 smp tue may 10 17 27 01 utc 2016 x86 64 x86 64 x86 64 gnu ...

NGINX核心引數優化

核心引數的優化,主要是在linux系統中針對nginx應用而進行的系統核心引數的優化。下面給出的乙個優化例項以供參考。net.ipv4.tcp max tw buckets 6000 net.ipv4.ip local port range 1024 65000 net.ipv4.tcp tw re...