db file parallel write,write complete waits

 SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Prod
PL/SQL Release 10.2.0.3.0 - Production

 

SQL> select name,parameter1,parameter2,parameter3,wait_class from v$event_name
  2   where name in ('free buffer waits','db file parallel write','write complete waits');

NAME                      PARAMETER1 PARAMETER2 PARAMETER3 WAIT_CLASS
------------------------- ---------- ---------- ---------- ------------------------------------------------
free buffer waits         file#      block#     set-id#    Configuration
write complete waits      file#      block#                Configuration
db file parallel write    requests   interrupt  timeout    System I/O

 

在Oracle 10g中,db file parallel write 被归属为系统I/0等待类,如果你检查到了系统出现了大量的db file parallel write事件,表明你的I/O有问题。这时你可以检查db file parallel write ,write complete waits,free buffer waits的平均等待时间

SQL> select event,time_waited,average_wait from v$system_event where event in
  2  ('db file parallel write','write complete waits','free buffer waits');

EVENT                                                            TIME_WAITED AVERAGE_WAIT
---------------------------------------------------------------- ----------- ------------
db file parallel write                                                   284          .67

我这里由于是测试机器,没有出现 write complete waits,free buffer waits 等待事件

AVERAGE_WAIT的值应该小于1(百分之一秒),如果AVERAGE_WAIT大于10(十分之一秒),表明非常缓慢的I/O,出现了db file parallel write 时常也会伴随write complete waits等待,如果是非常繁忙的OLTP系统,还可能出现free buffer waits,因为缓慢的I/0势必影响前台进程。db file parallel write只属于DBWR进程独有,不要被名字迷惑了,不要误解为该事件与并行DML有关。

你可能感兴趣的:(sql,File,database,System,buffer,parallel)