Oracle10gR2中调整usercommit

文章作者 100test 发表时间 2008:04:19 13:05:06
来源 100Test.Com百考试题网


  在以前的的Oracle版本中,假如用户commit,后台的LGWR进程必将会把内存中的redo数据写入到online redo log的文件里,之后又会将控制权返回给用户,需要注意的是,其实这段很可能并不是磁盘操作,而是写入到磁盘缓冲中的。假如应用中有过于频繁的用户commit,那么很可能会产生明显的log file sync的等待事件。

  而Oracle10g中的新功能-Asynchronous Commit可能是解决这个问题的一个最新方法。

  Oracle10g中,我们可以设置commit的行为来做到在commit之后,控制权立刻返回给用户,而Oracle会在恰当的时候来唤醒LGWR,批量更新online redo log文件。

  我们可以作系统级的更改:

  ALTER SYSTEM SET COMMIT_WRITE = BATCH, NOWAIT

  同样我们也可以在commit时单独使用,这样作虽然意味着即使commit了事务,在数据库恢复时也是不一定找得回来的。但从安全换效率的角度考虑,此做法也不失为权益之计。

  COMMIT WRITE BATCH NOWAIT



相关文章


2007年11月份软件水平考试(高级)成绩查询开始
Java中的抽象数据类型探讨
在Ecli e中使用SWT进行界面设计
老化的数据仓库-新技术应用的瓶颈
Oracle10gR2中调整usercommit
Oracle数据库中的临时表用法
使用索引跳跃式扫描以提高查询速度
OraclePackage中返回游标的写法和调用
初学j2me必读网友学习笔记
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛