日期:2014-05-17  浏览次数:21062 次

commit的效率问题
尽量多使用COMMIT,有个好处就是可以释放redo log buffer中的空间,因此可以提高性能。但在此,我有个疑惑,就是redo log buffer 中的redo entry可以由LGWR持续写入redo log file中了,这样也就把redo log buffer的空间给释放了,那么commit这样做岂不脱裤子放屁了?希望有大哥传道授业解惑,小生铭感于心!



------解决方案--------------------
commit rollback主要是事务控制
如果你做了几个update
其中一个update出了问题,你希望回到原来的状态,
就可rollback
如果成功了,则commit
------解决方案--------------------
COMMIT是将你的操作写到redo log file中,你的操作如果COMMIT了,对数据库的操作就永久性写到数据库中。如果你在操作过程中INSTNCE崩溃,或客户端的系统崩溃,断电你的操作没有COMMIT,那么你所做的所有操作都白费。
------解决方案--------------------
事务有ACID四个特性包括原子性,一致性,永久性,隔离性