[20191204]關於oracle例項是否使用hugepages問題2.txt
[20191204]關於oracle例項是否使用hugepages問題2.txt
--//自己最近一段時間一直在關注這個問題,看到一個連結:
--//實際上掃描/proc/$pid/smaps獲得共享記憶體段大小.指令碼如下:
--//我修改一點點.他執行ps -ef | grep $pid | grep -v grep可能有錯,因為grep $pid可能查詢到無關pmon的程式.
--//另外該指令碼不能使用在AMM的環境.實際上指令碼很簡單含有KernelPageSize就是使用hugepages的段.
#! /bin/bash
total_shmsize=0
total_hugepagesize=0
for pid in `ps -ef | grep ora_pmon_|egrep -v "grep|+ASM"| awk '{print $2}'`
do
echo
echo "-----------------------------------------------------------"
echo
# ps -ef | grep $pid | grep -v grep
ps v $pid
shmsize=`grep -A 1 '/SYSV00000000' /proc/$pid/smaps | grep "^Size:" | awk 'BEGIN{sum=0}{sum+=$2}END{print sum/1024}' | awk -F"." '{print $1}'`
hugepagesize=`grep -B 11 'KernelPageSize: 2048 kB' /proc/$pid/smaps | grep "^Size:" | awk 'BEGIN{sum=0}{sum+=$2}END{print sum/1024}' | awk -F"." '{print $1}'`
echo "INSTANCE SGA (SMALL/HUGE page)" : $shmsize "MB"
echo "INSTANCE SGA (HUGE PAGE)" $hugepagesize "MB"
echo "Percent Huge page :" $(( $hugepagesize *100 / $shmsize )) "%"
total_shmsize=$(( $shmsize + $total_shmsize ))
total_hugepagesize=$(( $total_hugepagesize + $hugepagesize ))
done
echo
echo "-----------------------------------------------------------"
echo
echo "SGA TOTAL (SMALL/HUGE page)" : $total_shmsize "MB"
echo "SGA TOTAL (HUGE PAGE)" $total_hugepagesize "MB"
echo "Percent Huge page :" $(( $total_hugepagesize *100 / $total_shmsize )) "%"
--//測試看看:
# grep "^vm.nr" /etc/sysctl.conf
vm.nr_hugepages = 104
vm.nr_overcommit_hugepages = 1000
SYS@book> startup
ORACLE instance started.
Total System Global Area 643084288 bytes
Fixed Size 2255872 bytes
Variable Size 205521920 bytes
Database Buffers 427819008 bytes
Redo Buffers 7487488 bytes
Database mounted.
Database opened.
--//alert.log:
Starting ORACLE instance (normal)
************************ Large Pages Information *******************
Per process system memlock (soft) limit = 51 GB
Total Shared Global Region in Large Pages = 208 MB (33%)
Large Pages used by this instance: 104 (208 MB)
Large Pages unused system wide = 0 (0 KB)
Large Pages configured system wide = 104 (208 MB)
Large Page size = 2048 KB
RECOMMENDATION:
Total System Global Area size is 618 MB. For optimal performance,
prior to the next instance restart:
1. Increase the number of unused large pages by
at least 205 (page size 2048 KB, total size 410 MB) system wide to
get 100% of the System Global Area allocated with large pages
********************************************************************
--//在混合模式.
$ . huge.sh
-----------------------------------------------------------
oracle 5565 1 0 17:01 ? 00:00:00 ora_pmon_book
INSTANCE SGA (SMALL/HUGE page) : 616 MB
INSTANCE SGA (HUGE PAGE) 208 MB
Percent Huge page : 33 %
-----------------------------------------------------------
-----------------------------------------------------------
SGA TOTAL (SMALL/HUGE page) : 616 MB
SGA TOTAL (HUGE PAGE) 208 MB
Percent Huge page : 33 %
$ ipcs -m
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x00000000 414711809 oracle 640 12582912 25
0x00000000 414744578 oracle 640 159383552 25
0x00000000 414777347 oracle 640 33554432 25
0x00000000 414810117 oracle 640 8388608 25
0x00000000 414842886 oracle 640 4194304 25
0x00000000 414875655 oracle 640 427819008 25
0xe8a8ec10 414908424 oracle 640 2097152 25
--//key=0xe8a8ec10,大小2097152/1024/1024 = 2M.視乎這個多出2M的段比較特殊.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2666768/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20191202]關於oracle例項是否使用hugepages問題.txtOracle
- 2 Day DBA-管理Oracle例項-關於例項的啟動和關閉-關於例項關閉Oracle
- 2 Day DBA-管理Oracle例項-關於例項的啟動和關閉-關於例項啟動Oracle
- 請教一個關於JdonFrameworkTest例項的問題Framework
- 關於索引是否該rebuild的問題索引Rebuild
- 2 Day DBA-管理Oracle例項-關閉和啟動Oracle例項-使用OEMDC關閉和啟動Oracle例項Oracle
- linux上Oracle的sga(HugePages)分配問題LinuxOracle
- 【TUNE_ORACLE】Oracle資料庫與HugePages(三)HugePages常見問題和解決辦法Oracle資料庫
- 判斷oracle是否是rac例項Oracle
- 關於 Angular 應用 Components 和 Directives 的例項化問題Angular
- 線上問題排查例項分析|關於 Redis 記憶體洩漏Redis記憶體
- 線上問題排查例項分析|關於Redis記憶體洩漏Redis記憶體
- 關於涉及較大資料量時的物件例項化問題大資料物件
- 有關jbpm流程例項版本的問題
- 關於Oracle10g JOB執行是否會重疊的問題Oracle
- 2 Day DBA-管理Oracle例項-關於例項記憶體結構Oracle記憶體
- 關於是否需要同步的一個問題?
- 對於物件的動態建立例項問題物件
- oracle 關於例項恢復的一個討論Oracle
- 關於MQTT 使用遇到問題MQQT
- 關於oracle的監聽問題Oracle
- JdonFramework 5.1例項問題?Framework
- 關於使用者 email 郵件地址是否允許有加號的問題AI
- 2 Day DBA-管理Oracle例項-關於後臺程式Oracle
- Oracle關於week的計算問題Oracle
- 關於Oracle字符集的問題Oracle
- 關於excelize庫的使用問題Excelize
- 關於建表欄位是否該使用not null這個問題你怎麼看?Null
- 【Oracle ASM】關於asm例項與db例項中的磁碟狀態_詳細分析過程OracleASM
- 2 Day DBA-管理Oracle例項-關於例項的啟動和關閉-管理啟動和關閉許可權Oracle
- 2 Day DBA-管理Oracle例項-關於例項記憶體結構-程式全域性區(PGA)Oracle記憶體
- oracle rac 單個例項不能生成awr報告的問題Oracle
- oracle 10g srvctl 不能帶起節點例項問題Oracle 10g
- 關於oracle例項恢復的前滾和回滾的理解Oracle
- 2 Day DBA-管理Oracle例項-關於初始化引數Oracle
- 關於oracle中大物件處理的一些方法和例項Oracle物件
- 全面學習和應用ORACLE ASM特性--(1)關於asm例項OracleASM
- 使用HANGANALYZE跟蹤檔案診例項hang問題