Mysql

我的空閒記憶體在哪裡?(Solaris 10)

  • May 26, 2011

我有一個在 64GB 機器上執行的預設 Solaris 10 安裝。由於某種原因,並非所有記憶體都可供使用。我什至被它困擾的原因是因為我試圖讓 mysql 在那裡執行,並給它 58GB 或更多的 RAM,但我可以映射的最大值是 45GB(nmap 失敗)。

除了 GUI(我們將很快刪除)之外,沒有任何東西在執行。但是 UI 並沒有解釋 13 GB 記憶體在某處消失的事實。

如果 ARC 是 Solaris 中已用記憶體的一部分(與 linux 中的文件記憶體相反),那麼 UI 消耗 5GB,我們仍然應該為 MySQL 提供至少 55GB 的 RAM。但是:如果此記憶體被 ARC 消耗,它應該放棄記憶體,當 innodb 嘗試對記憶體進行 nmap 映射時(或者這樣做?),所以它沒有任何意義。

我怎樣才能看到是什麼消耗了這個記憶體並釋放它?

一些技術數據:

#kstat -m zfs | grep 大小
數據大小 7847447040
hdr_size 139495272
l2_hdr_size 0
l2_size 0
其他尺寸 510852000
尺寸 8497794312

# 頂部
96 個程序:95 個正在休眠,1 個在 CPU 上
CPU 狀態:99.9% 空閒,0.0% 使用者,0.1% 核心,0.0% iowait,0.0% 交換
記憶體:64G phys mem,51G free mem,2048M swap,2048M free swap

PID 使用者名 LWP PRI NICE SIZE RES 狀態 時間 CPU 命令
1529 根 1 59 0 67M 10M 睡眠 11:17 0.20%mixer_applet2
902 根 1 59 0 12M 9848K 睡眠 4:33 0.08% gconfd-2
1923 根 34 59 0 165M 57M 睡眠 3:50 0.06% java
1525 根 1 59 0 69M 13M 睡眠 3:24 0.06% gnome-netstatus
644 根 1 58 0 45M 29M 睡眠 2:38 0.05% Xorg
1501 根 1 59 0 73M 18M 睡眠 2:16 0.04% gnome 面板
19814 根 1 59 0 3268K 1820K cpu 0:00 0.03% 頂部
2416 根 47 59 0 87M 68M 睡眠 2:08 0.03% java
22587 無訪問 18 59 0 131M 115M 睡眠 2:13 0.03% java
744 無訪問 18 59 0 132M 115M 睡眠 2:13 0.03% java
908 根 1 59 0 6608K 4020K 睡眠 0:09 0.01% xscreensaver
2435 根 2 49 0 73M 14M 睡眠 0:18 0.01% gnome 終端
2497 根 23 59 0 11M 7384K 睡眠 0:04 0.01% nscd
22367 根 1 59 0 9832K 6636K 睡眠 0:01 0.00% snmpd
15253 根 1 59 0 6516K 3840K 睡眠 0:00 0.00% sshd

# prtdiag -v
系統配置:Dell Inc. PowerEdge R710
BIOS 配置:戴爾公司 2.2.10 11/09/2010
BMC 配置:IPMI 2.0(KCS:鍵盤控制器樣式)

==== 處理器插槽 =====================================

版本位置標籤
-------------------------------- --------------------------
Intel(R) Xeon(R) CPU X5670 @ 2.93GHz CPU1
Intel(R) Xeon(R) CPU X5670 @ 2.93GHz CPU2

==== 記憶體設備插槽 =================================

類型 狀態 設置 設備定位器 銀行定位器
------- ------ --- ------------------- --------------------
未知正在使用 1 DIMM_A1 
未知正在使用 1 DIMM_A2 
未知空 2 DIMM_A3 
未知在使用中 2 DIMM_A4 
未知在使用中 3 DIMM_A5 
未知空 3 DIMM_A6 
未知空 4 DIMM_A7 
未知空 4 DIMM_A8 
未知空 5 DIMM_A9 
未知在使用中 5 DIMM_B1 
未知在使用中 6 DIMM_B2 
未知空 6 DIMM_B3 
未知在使用中 4 DIMM_B4 
未知在使用中 5 DIMM_B5 
未知空 6 DIMM_B6 
未知空 4 DIMM_B7 
未知空 5 DIMM_B8 
未知空 6 DIMM_B9 

==== 板載設備 ======================================
嵌入式 Matrox G200 影片
嵌入式 Broadcom 5709C 網卡 1
嵌入式 Broadcom 5709C 網卡 2
嵌入式 Broadcom 5709C 網卡 3
嵌入式 Broadcom 5709C NIC 4
集成 RAID 控制器

==== 可升級插槽 =====================================

ID 狀態 類型 描述
--- --------- ---------------- ----------------------------
1 個可用的未知 PCI1
2 個可用的未知 PCI2
3 正在使用 未知 PCI3
4 個可用的未知 PCI4

#prstat -a
PID 使用者名大小 RSS 狀態 PRI NICE TIME CPU 程序/NLWP 
21369 根 3888K 3036K cpu10 59 0 0:00:00 0.0% prstat/1
1529 根 67M 10M 睡眠 59 0 0:11:22 0.0% 混合器_applet2/1
21234 100 45G 3686M 睡眠 59 0 0:00:17 0.0% mysqld/25
902 根 12M 9848K 睡眠 59 0 0:04:35 0.0% gconfd-2/1
644 根 45M 29M 睡眠 59 0 0:02:39 0.0% Xorg/1
642 根 2560K 764K 睡眠 59 0 0:00:00 0.0% fbconsole/1
640 根 5704K 1408K 睡眠 59 0 0:00:00 0.0% dtlogin/1
863 根 4872K 1968K 睡眠 59 0 0:00:00 0.0% sdt_shell/1
2438 根 1432K 832K 睡眠 59 0 0:00:00 0.0% sh/1
2436 根 2644K 1392K 睡眠 59 0 0:00:00 0.0% gnome-pty-helpe/1
883 根 1532K 892K 睡眠 59 0 0:00:00 0.0% Xsession2.jds/1
2435 根 73M 14M 睡眠 49 0 0:00:18 0.0% gnome-terminal/2
789 根 1568K 940K 睡眠 59 0 0:00:00 0.0% Xsession/1
783 smmsp 9452K 2120K 睡眠 59 0 0:00:00 0.0% 發送郵件/1
864 根 3228K 836K 睡眠 59 0 0:00:00 0.0% dsdm/1
435 根 2064K 940K 睡眠 59 0 0:00:00 0.0% smcboot/1
436 根 2064K 684K 睡眠 59 0 0:00:00 0.0% smcboot/1
402 根 1432K 624K 睡眠 59 0 0:00:00 0.0% utmpd/1
866 根 1456K 840K 睡眠 59 0 0:00:00 0.0% sh/1
437 根 2064K 684K 睡眠 59 0 0:00:00 0.0% smcboot/1
407 根 3988K 1936K 睡眠 59 0 0:00:00 0.0% syslogd/11
630 根 3256K 2260K 睡眠 59 0 0:00:00 0.0% 音量/5
2497 根 11M 7392K 睡眠 59 0 0:00:04 0.0% nscd/23
22200 根 3876K 1568K 睡眠 59 0 0:00:00 0.0% syslogd/13
399 根 7996K 3996K 睡眠 59 0 0:00:01 0.0% inetd/4
415 根 2468K 1372K 睡眠 59 0 0:00:00 0.0% ttymon/1
404 根 2504K 1276K 睡眠 59 0 0:00:00 0.0% ttymon/1
295 守護程序 2932K 1432K 睡眠 59 0 0:00:00 0.0% rpcbind/1
142 根 5452K 2184K 睡眠 59 0 0:00:00 0.0% syseventd/15
224 根 2824K 1080K 睡眠 59 0 0:00:00 0.0% cron/1
156 根 4344K 3164K 睡眠 59 0 0:00:00 0.0% picld/9
387 根 18M 14M 睡眠 59 0 0:00:02 0.0% fmd/19
152 守護程序 4612K 2684K 睡眠 59 0 0:00:00 0.0% kcfd/4
397 根 2132K 1040K 睡眠 59 0 0:00:00 0.0% sac/1
19861 根 5864K 3720K 睡眠 59 0 0:00:00 0.0% zlogin/1
204 根 2244K 780K 睡眠 59 0 0:00:00 0.0% iscsi-initiator/2
2498 守護程序 2716K 1676K 睡眠 59 0 0:00:00 0.0% statd/1
369 根 2528K 1292K 睡眠 59 0 0:00:03 0.0% in.routed/1
77 根 6148K 3484K 睡眠 59 0 0:00:02 0.0% devfsadm/9
1923 根 165M 57M 睡眠 59 0 0:03:51 0.0% java/34
669 根 6600K 2912K 睡眠 59 0 0:00:00 0.0% dtlogin/1
11 根 12M 11M 睡眠 59 0 0:00:08 0.0% svc.configd/16
NPROC 使用者名交換 RSS 記憶體時間 CPU 
91根 423M 425M 0.6% 0:34:57 0.0%
1 100 45G 3703M 5.7% 0:00:17 0.0%
2 無訪問 251M 237M 0.4% 0:04:28 0.0%
2 smmsp 3804K 16M 0.0% 0:00:00 0.0%
10 守護程序 10M 14M 0.0% 0:00:00 0.0%

# 迴聲 ::memstat | mdb -k
頁面摘要頁面 MB %Tot
------------ ---------------- ---------------- ----
核心 646470 2525 4%
ZFS 文件數據 1920208 7500 11%
匿名 1078294 4212 6%
執行和庫 14431 56 0%
頁面記憶體 2544 9 0%
免費(記憶體列表)13012 50 0%
免費(freelist)13096905 51159 78%

合計 16771864 65515
實體 16324293 63766

可以請粘貼以下內容

prtdiag -v
prstat -a

根據 ::memstat 輸出,ZFS 正在使用 7.5GB 的物理記憶體。小心 ZFS:它通常過於激進,會耗盡系統的其餘記憶體。在實踐中,它根本不會在您願意時釋放記憶體。

有關如何限制 ARC 大小以緩解此問題的詳細資訊,請參閱ZFS 最佳實踐指南。

引用自:https://serverfault.com/questions/265405