onstat -g buf 命令:打印缓冲池的概要文件信息

使用 onstat -g buf 命令来显示每个缓冲池的概要文件信息。

语法:

示例输出

onstat -g buf 命令的输出取决于 BUFFERPOOL 配置参数设置是否包含 memory 字段和 buffers 字段而稍有不同。输出将显示 memory 设置。buffers 设置的输出包含 max extendsnext buffers 字段,代替了 max memorynext memory 字段。

图: 对于 memory 设置的 onstat -g buf 输出

Profile
          
          Buffer pool page size: 2048
          dskreads   pagreads   bufreads   %cached dskwrits   pagwrits   bufwrits   %cached
          1190       1773       661359     99.82   16863      83049      185805     90.92  
          bufwrits_sinceckpt  bufwaits   ovbuff     flushes   
          11243               115        0          42        
          
          Fg Writes     LRU Writes    Avg. LRU Time Chunk Writes  Total Mem
          0             0             nan           10883         32Mb    
          
          cache                
          # extends  max memory  next memory  hit ratio  last      
          0          128Mb       32Mb         90         11:31:17  
          
          Bufferpool Segments
          id segment      size     # buffs  
          0  0x449f0000   32Mb     13025    
          
          ----------------------------------
          
          Buffer pool page size: 8192
          dskreads   pagreads   bufreads   %cached dskwrits   pagwrits   bufwrits   %cached
          0          0          11         100.00  4          16         4          0.00   
          bufwrits_sinceckpt  bufwaits   ovbuff     flushes   
          0                   0          0          1         
          
          Fg Writes     LRU Writes    Avg. LRU Time Chunk Writes  Total Mem
          0             0             nan           4             128Mb   
          
          cache                
          # extends  max memory  next memory  hit ratio  last      
          0          1280Mb      128Mb        90         11:31:41  
          
          Bufferpool Segments
          id segment      size     # buffs  
          0  0x4928e000   128Mb    14988    
          
          ----------------------------------
          
          Fast Cache Stats
          gets       hits       %hits   puts      
          246854     244407     99.01   111147    

输出描述

Buffer pool page size
缓冲池中页面的字节数
dskreads
将页面带入缓冲池的已执行你的磁盘读操作数。每次读操作读取一个或多个页面。
pagreads
从磁盘读入缓冲池的页面数
bufreads
从该缓冲池读取的页面内存映象次数
%cached
为满足高速缓存页面映象的该缓冲池读取的页面百分比(而不是执行磁盘读取)。计算为 (bufreads - dskreads) / bufreads x 100。更高的百分比说明有更好的高速缓存性能。
dskwrits
将更改的页面从缓冲池写回磁盘所执行的磁盘写入操作数。每次写入操作撰写一个或多个页面。
pagwrits
从缓冲池写入磁盘的页面数
bufwrits
写入该缓冲池的页面内存映象次数
%cached
为满足高速缓存页面映象的该缓冲池写入的页面百分比(而不是执行磁盘写入)。计算为 (bufwrits - dskwrits) / bufwrits x 100
bufwrits_sinceckpt
自上个 checkpiont 后页面内存映象写入该缓冲池的次数
bufwaits
在该缓冲池内线程必须等待缓冲区内锁的次数。数字越大说明在相同页面上互不兼容的锁的多个线程之间的争用越多。
ovbuff
为了创建空闲的缓冲区来读取另外一个受请求的页面而将更改了的缓冲区从该缓冲池写入磁盘的次数。如果 ovbuff 值很大,那么可能说明缓冲池还不够大,还不能容纳使用该缓冲池的应用程序所需的工作集,这可能导致性能降级。
flushes
服务器为缓冲池内所有 dirty 缓冲区执行的大清空的次数。这可能由不同的原因引起,可能是作为 checkpoint 过程的一部分而执行此操作或缓冲池在清洁的缓冲区外运行(无论 LRU 清除活动是否正常)。
Fg Writes
该缓冲池中访问缓冲区的非 I/O 清空程序线程写入磁盘的已更改缓冲区的数量。这个数字是 ovbuff 字段的超集。除了 ovbuff 字段计数的写入服务页面缺省值的次数,该值也包括由魔哥为了保持数据库记录和保留页的一致性而执行的操作所做的前景撰写,其目的是为了保证在特殊情况下崩溃恢复的准确性。
LRU Writes
由 LRU 清除线程从该缓冲池将更改了的缓冲区写入磁盘的数量。如果缓冲池超过了指定在 lru_max_dirty 字段中 BUFFERPOOL 配置参数值或如果由于缓冲池溢出而发生前景撰写,那么将激活 LRU 清除程序。
Avg. LRU Time
LRU 清除程序用来清除单个 LRU 链所用的平均时间
Chunk Writes
由 Chunk 清除操作将已更改的缓冲区写入磁盘的数量。Chunk 清除程序撰写了所有在缓冲池中的某个 chunk 内的已更改的缓冲区。这项操作在需要快速清除大量缓冲区(例如 checkpoint 进程和快速恢复)的各种特殊环境中进行。
Total Mem
缓冲池的大小
# extends
缓冲池被扩展的次数
max memory (memory setting)
缓冲池的目标最大大小。该缓冲池的大小可以超过该值,但是不能多于一个分段的大小。The target maximum size of the buffer pool. The actual size of the buffer pool can exceed this value, but not more than the size of one segment.
max extends (buffers setting)
缓冲池库被扩展的至多次数。(该字段没有在示例样本中显示)
next memory (memory setting)
缓冲池的下一次要扩展的大小
next buffers (buffers setting)
为该缓冲池下一次扩展所需的缓冲区数 (该字段没有在示例样本中显示)
cache hit ratio
低于该缓冲池被扩展的读缓存的命中率
last
上次缓冲池扩展的时间
id
缓冲池段的 ID
segment
缓冲池段的内部地址
size
缓冲池段的大小
# buffs
缓冲池段中缓冲区数
Fast Cache Stats
快速缓存(减少需要访问缓冲池的时间类型的缓存)的统计信息
gets
服务器在快速缓存中寻找缓冲区的次数
hits
服务器发现它正在寻找快速缓存缓冲区的次数
%hits
hits 的百分比 ,即 hits*100/gets
puts
服务器向快速缓存中插入缓冲区的次数