ITPub博客

首页 > Linux操作系统 > Linux操作系统 > db_file_multiblock_read_count参数

db_file_multiblock_read_count参数

原创 Linux操作系统 作者:cdbdp 时间:2011-10-26 15:14:18 0 删除 编辑

关于db_file_multiblock_read_count参数的设置
我们在遇到数据库IO问题的时候,有时候会设置db_file_multiblock_read_count参数.
对于这个参数,从Oracle10gR2之后,数据库会根据系统的情况自动调整,但是在9i的时候还需要手动来设置.

对于10G中,我们来看看它的参数.
数据库版本10.2.0.1
SQL> select * from v$version where rownum <2;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod

当前这个参数是非默认的
SQL> select name,type,value,isdefault from v$parameter where name='db_file_multiblock_read_count';

NAME TYPE VALUE ISDEFAULT
------------------------------ ---------- ----- ----------
db_file_multiblock_read_count 3 16 FALSE


可以首先生成一个pfile,然后将生成的pfile文件中将该参数删除,然后根据该pfile再创建spfile.
下次启动的时候就使用该spfile启动,就会将db_file_multiblock_read_count改为默认的.

下面是我的系统上修改后的默认值:
SQL> select name,type,value,isdefault from v$parameter where name='db_file_multiblock_read_count';

NAME TYPE VALUE ISDEFAULT
------------------------------ ---------- ----- ----------
db_file_multiblock_read_count 3 73 TRUE

值为73.


对于10G以前的数据库,可以通过下面的方法计算出有效的db_file_multiblock_read_count值.

数据库版本:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

SQL> show parameter block

NAME TYPE VALUE
------------------------------------ ---------------------- ------------------------------
db_block_buffers integer 0
db_block_checking boolean FALSE
db_block_checksum boolean TRUE
db_block_size integer 8192
db_file_multiblock_read_count integer 72
当前设置的db_file_multiblock_read_count值为72


首先查询file#为11的数据文件的PHYRDS及PHYBLKRD.
SQL> select phyrds,phyblkrd from v$filestat where file#=11;

PHYRDS PHYBLKRD
---------- ----------
755 64152

已用时间: 00: 00: 00.00

在file#为11的数据文件进行全表扫描.
SQL> select count(*) from xx_test;

COUNT(*)
----------
1683840

已用时间: 00: 00: 03.02

再查询file#为11的数据文件的PHYRDS及PHYBLKRD.
SQL> select phyrds,phyblkrd from v$filestat where file#=11;

PHYRDS PHYBLKRD
---------- ----------
1063 84418

已用时间: 00: 00: 00.00


得出的两个值相减后计算有效的multiblock_read_count值
(84418-64152)/(1063-755)=65.80

该参数的设置在10g以前可能会影响到系统IO,在10g以后是建议取默认值.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/23382569/viewspace-709724/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 跟踪session
请登录后发表评论 登录
全部评论

注册时间:2010-02-22

  • 博文量
    51
  • 访问量
    105409