依據oracheck結果修改系統引數配置記錄
在之前的文章《使用oracheck進行系統巡檢》(http://blog.itpub.net/17203031/)中,筆者發現系統的一些配置問題。注意:我們雖然在安裝過程中完全依據文件進行實際安裝,但是落實到具體的最佳實踐是有一些差距的。
oracheck是融合了最新的Oracle最佳實踐配置指導,對檢查出的問題也提供了比較詳細的說明內容。本篇主要針對發現的幾個問題修改進行記錄。
1、system core file limit設定
第一個info等級問題圖示如下:
Linux、Unix系統在執行過程中,如果程式發生致命錯誤,是支援系統級別生成core dump檔案的。core dump是一種診斷用資訊,主要用於進行錯誤後的故障診斷發現功能。Oracle常常使用的的dump功能,也就是藉助這個機制來進行的。
不同的dump檔案,依據級別的差異有大小差異。Linux/Unix系統中有專門的引數來限制檔案的大小,如果生成的dump檔案超過限制,就不會生成出來。從oracheck檢查情況看,就是對這個引數的內容有問題。
提示資訊中說:這個引數限制了coredumpsize大小,如果設定了0-2GB範圍,就有生成dump檔案的障礙。
檢視coredumpsize方法是使用ulimit –a,檢視特定使用者的設定大小。
[oracle@CRSimpleLinux orachk]$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 62217
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65536
pipe size (512 bytes, -p) 8
修改方法就是在/etc/security/limits.conf中進行配置,對Oracle使用者放開dump限制。
[root@CRSimpleLinux ~]# cat /etc/security/limits.conf
# /etc/security/limits.conf
#@student - maxlogins 4
--安裝oracle中官方推薦
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
--新加入內容
oracle soft core unlimited
oracle hard core unlimited
# End of file
我們對於limits.conf檔案並不陌生。安裝oracle作業系統配置層面,要加入nproc和nofile的配置專案。修改之後,驗證oracle使用者limit情況。
[oracle@CRSimpleLinux ~]$ ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
2、shmmax共享記憶體大小
和windows版本Oracle工作原理不同,Linux/Unix版本Oracle在執行中,後臺程式採用的是真正的共享記憶體機制。引數shmmax就是作業系統層面設定的共享記憶體最大大小。
kernel.shmmax引數是作業系統層面設定的,在安裝Oracle中是有配置。但是從最佳實踐看,Oracle推薦是記憶體大小的一半大小。
修改/etc/sysctl.conf檔案,來設定新的取值。最後透過sysctl –p來應用。
[root@CRSimpleLinux ~]# sysctl -p
net.ipv4.ip_forward = 0
kernel.shmall = 2097152
kernel.shmmax = 4088072192
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
3、aio-max-nr大小
引數aio-max-nr負責描述非同步IO操作最大的檔案描述符個數,檢查中發現這個描述符過小。
透過手工修改配置,可以提高個數資訊,避免IO瓶頸。
[root@CRSimpleLinux ~]# cat /proc/sys/fs/aio-max-nr
65536
[root@CRSimpleLinux ~]# echo > /proc/sys/fs/aio-max-nr 1048576
[root@CRSimpleLinux ~]# cat /proc/sys/fs/aio-max-nr
1048576
4、RAC環境下UDP Buffer緩衝區大小
UDP協議是Oracle RAC工作的一個重要協議,負責進行private network通訊。私有網路質量直接影響RAC整體效率和共享記憶體情況。
修改依然是在sysctl.conf上進行。提示資訊中也給出了不同版本的建議設定取值。另外wmen_max也修改為2097152,屬於相似問題。
[root@CRSimpleLinux ~]# sysctl -p
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 2097152
net.core.wmem_default = 262144
net.core.wmem_max = 2097152
5、結論
oracheck在很多方面都給出比官方文件更好地解決方案和建議。比較好的策略是,先按照官方文件的建議將資料庫安裝完成,之後下載執行最新的oracheck檢查包,診斷問題進行調整,這樣可以保證系統在最佳狀態下執行。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/500314/viewspace-1487063/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Gradle根據引數配置不同的依賴Gradle
- linux修改系統引數Linux
- SAP配置系統引數
- AIX 系統引數配置AI
- AIX 系統引數配置 -- 轉AI
- 論資訊系統的定位--業務活動結果的記錄工具
- 使用oracheck進行系統巡檢
- 【Tips】獲取結果集中偶數行記錄
- Oracle引數修改小結Oracle
- 選購交換機的引數依據和主要的引數指標詳解指標
- AIX作業系統核心引數配置AI作業系統
- 記錄輸出結果工具-script
- Linux系統下的ssh使用(依據個人經驗總結)Linux
- oracle不走hint原因1:依據hint會出現錯誤結果Oracle
- /proc虛擬檔案系統與系統核心引數修改方法
- 記錄一個Oracle引數Oracle
- Linux下修改系統編碼的操作記錄Linux
- Docker(十七)-修改Docker容器啟動配置引數Docker
- Cursor 作為引數傳遞並返回結果
- Go 多協程記錄執行結果Go
- mysql ,tidb sysbench 測試結果記錄MySqlTiDB
- JVM記憶體引數配置JVM記憶體
- BW 系統引數
- timesten 11.2.2 作業系統核心引數配置作業系統
- MONGODB 最近測試結果的簡單記錄MongoDB
- OceanBase學習之路51|常用的系統配置引數及系統變數有哪些?變數
- JS 根據彙總結果過濾JS
- Linux系統本地yum源環境配置記錄Linux
- 結構體引數的傳遞以及如何修改指標引數的值結構體指標
- Flink常用的配置引數總結
- linux引數修改Linux
- 【CDB】怎樣修改PDB的記憶體引數記憶體
- 在linux系統上裝oracle為什麼要修改作業系統的核心引數LinuxOracle作業系統
- 分散式系統中處理引數配置的 4 種方案分散式
- 分散式系統中處理引數配置的4種方案分散式
- 魅族MX6引數配置、效能、系統全面評測
- linux系統基於oracle的核心引數配置說明LinuxOracle
- 實戰Memcached快取系統(3)Memcached配置引數初解快取