control file parallel write事件小记

本文介绍了Oracle控制文件中记录的关键信息,包括数据库SCN、当前日志号、归档日志和备份集等,并分析了几种可能导致控制文件频繁更新的情况。

通过视图V$CONTROLFILE_RECORD_SECTION可以知道,控制文件里都记录了那些内容。

SQL> select type,records_used from v$controlfile_record_section;

TYPE                         RECORDS_USED
---------------------------- ------------
DATABASE                                1
CKPT PROGRESS                           0
REDO THREAD                             1
REDO LOG                                3
DATAFILE                                4
FILENAME                                8
TABLESPACE                              5
TEMPORARY FILENAME                      1
RMAN CONFIGURATION                      0
LOG HISTORY                            54
OFFLINE RANGE                           0

TYPE                         RECORDS_USED
---------------------------- ------------
ARCHIVED LOG                            0
BACKUP SET                              0
BACKUP PIECE                            0
BACKUP DATAFILE                         0
BACKUP REDOLOG                          0
DATAFILE COPY                           0
BACKUP CORRUPTION                       0
COPY CORRUPTION                         0
DELETED OBJECT                          0
PROXY COPY                              0
BACKUP SPFILE                           0

TYPE                         RECORDS_USED
---------------------------- ------------
DATABASE INCARNATION                    2
FLASHBACK LOG                           0
RECOVERY DESTINATION                    1
INSTANCE SPACE RESERVATION              1
REMOVABLE RECOVERY FILES                0
RMAN STATUS                             0
THREAD INSTANCE NAME MAPPING            8
MTTR                                    1
DATAFILE HISTORY                        0
STANDBY DATABASE MATRIX                10
GUARANTEED RESTORE POINT                0

TYPE                         RECORDS_USED
---------------------------- ------------
RESTORE POINT                           0

已选择34行。

控制文件里记录了数据库的SCN信息,当前日志号,归档日志信息,备份集信息,数据文件信息等等。而这些信息,很多都是需要更新的,更新的频率视情况而定。更新当前日志号的信息,是发生日志切换的时候需要做的,更新备份集的信息是在用RMAN备份的时候需要做的。一般来说,大体有一下几种常见的情况:

1)日志文件过小,或者数据库DML操作太多,导致日志切换太过频繁。日志的切换都是需要更新控制文件的,此时的表现就是LGWR进程等待control file parallel write事件。

2)MTTR设置的过小,导致检查点频繁发生。我们知道控制文件里是记录SCN信息的,检查点发生的时候,是需要更新SCN的,特别是10g以后的增量检查点,当发生增量检查点的时候,会3秒更新一次控制文件中记录的RBA信息。

3)NOLOGGING 导致的频繁更新数据文件。

对数据文件在nologging选项下执行修改工作时,为了修改unrecoverable scn需要更新控制文件。这时,服务器进程将等待crontrol file parallel write事件。

4)i/o系统的性能缓慢时

最好将控制文件放在独立的磁盘空间上。

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

转载于:http://blog.itpub.net/22034023/viewspace-680923/

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值