学习动态性能表(9)--v$filestat

学习动态性能表

第九篇--V$FILESTAT  2007.6.5

  本视图记录各文件物理I/O信息。如果瓶颈与I/O相关,可用于分析发生的活动I/O事件。V$FILESTAT显示出数据库I/O的下列信息(不包括日志文件):

  • l  物理读写数
  • l  块读写数
  • l  I/O读写总耗时

  以上数值自实例启动即开始记录。如果获取了两个快照,那么二者之间的差异即是这一时间段内活动I/O统计。

V$FILESTAT中的常用列:

 

  • l  FILE#:文件序号;
  • l  PHYRDS:已完成的物理读次数;
  • l  PHYBLKRD:块读取数;
  • l  PHYWRTS:DBWR完成的物理写次数;
  • l  PHYBLKWRT:写入磁盘的块数;

V$FILESTAT注意项:

  • l  因为multiblock读调用,物理读数和数据块读数有可能不同;
  • l  因为进程直写,物理写和数据块写也可能不一致;
  • l  Sum(physical blocks read) 近似于v$sysstat中的physical reads;
  • l  Sum(physical blocks written) 近似于v$sysstat中的physical writes;
  • l  数据读(由缓存读比直读好)由服务进程处理。从buffer cache写只能由DBWR进行,直写由服务进程处理。

V$FILESTAT中的连接列

Column                              View                                          Joined Column(s)

-----------                                   -------------------------                  -------------------------

FILE#                                 DBA_DATA_FILES                    FILE_ID

FILE#                                 V$DATAFILE                             FILE#

示例:

1.获得数据文件物理读写和数据块读写信息:

select df.tablespace_name name,

       df.file_name       "file",

       f.phyrds           pyr,

       f.phyblkrd         pbr,

       f.phywrts          pyw,

       f.phyblkwrt        pbw

  from v$filestat f, dba_data_files df where f.file# = df.file_id

 order by df.tablespace_name;

注意:尽管oracle记录的读写次数非常精确,但如果数据库运行在Unix文件系统(UFS)有可能不能表现真实的磁盘读写,例如,读次数可能并非真实的磁盘读,而是UFS缓存。不过裸设备的读写次数应该是比较精准的。

原文地址:https://www.cnblogs.com/mq0036/p/4334868.html