[20130409]Data file init write等待事件.txt
清明前几天帮别人解决数据库问题,就是高峰的时候有点慢。
仔细看awr报表,除了发现几条sql语句没有建立索引外,发现等待事件里Data file init write。
很明显主要数据文件next设置太小,当我看数据文件发现next竟然是8k,将它修改128M后问题消失。
我自己感到奇怪的是无论如何前面的安装人员都不应该把next设置为8k(难道是笔误应该是8M还有可能)。
今天自己在11G上做一个测试,原来问题在于建立的表空间语句上。
测试如下:
1.测试环境:
SQL> @ver
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
--建立表空间:
CREATE TABLESPACE aaa DATAFILE '/u01/app/oracle11g/oradata/test/aaa01.dbf' SIZE 88K AUTOEXTEND ON MAXSIZE UNLIMITED
LOGGING
PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 8K
SEGMENT SPACE MANAGEMENT AUTO
FLASHBACK ON;
--注意我没有使用next 参数。
SQL> select dbms_metadata.get_ddl('TABLESPACE','AAA') from dual;
DBMS_METADATA.GET_DDL('TABLESPACE','AAA')
----------------------------------------------------------------------
CREATE TABLESPACE "AAA" DATAFILE
'/u01/app/oracle11g/oradata/test/aaa01.dbf' SIZE 90112
AUTOEXTEND ON NEXT 8192 MAXSIZE 32767M
LOGGING ONLINE PERMANENT BLOCKSIZE 8192
EXTENT MANAGEMENT LOCAL AUTOALLOCATE DEFAULT
NOCOMPRESS SEGMENT SPACE MANAGEMENT AUTO
--可以发现next=8K.这样在业务高峰,如果数据文件扩展8k这样的速度明显太慢。出现Data file init write等待事件。
SQL> column file_name format a50
SQL> select tablespace_name, file_name, bytes, autoextensible, increment_by from dba_data_files order by file_id;
TABLESPACE_NAME FILE_NAME BYTES AUT INCREMENT_BY
------------------------------ ----------------------------------------------- ---------- --- ------------
SYSTEM /u01/app/oracle11g/oradata/test/system01.dbf 807403520 YES 1280
SYSAUX /u01/app/oracle11g/oradata/test/sysaux01.dbf 880803840 YES 1280
UNDOTBS1 /u01/app/oracle11g/oradata/test/undotbs01.dbf 1073741824 YES 640
USERS /u01/app/oracle11g/oradata/test/users01.dbf 536870912 YES 2048
EXAMPLE /u01/app/oracle11g/oradata/test/example01.dbf 104857600 YES 80
RMAN /u01/app/oracle11g/oradata/test/rman01.dbf 67108864 YES 2048
TOOLS /u01/app/oracle11g/oradata/test/tools01.dbf 67108864 YES 2048
TEST /u01/app/oracle11g/oradata/test/test01.dbf 67108864 YES 2048
TESTMSSM /u01/app/oracle11g/oradata/test/testmssm01.dbf 67108864 YES 2048
UNDOTBS2 /u01/app/oracle11g/oradata/test/undotbs02.dbf 1048576 NO 0
AAA /u01/app/oracle11g/oradata/test/aaa01.dbf 90112 YES 1
11 rows selected.
--从视图也可以看出来。
时间: 2024-10-26 00:50:55