Oracle中控制commit的三个参数 commit_write, commit_logging和 commit_wait

简介: Oracle中控制commit的动作有三个参数 commit_write, commit_logging和 commit_wait,按重要性分别说明如下

Oracle中控制commit的动作有三个参数 commit_write, commit_logging和 commit_wait,按重要性分别说明如下:


commit_write

参见文档: https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/COMMIT_WAIT.html#GUID-40E51330-96D0-4B98-BBF3-6A45D970AAB1

commit_wait 这个参数可以设置成nowait, wait 和 force_wait 等三种情况。

wait的模式下只是在redo写到磁盘上后commit才会返回,不管是batch还是immeidate方式,客户端接受到commit的成功消息,那么事务就已经是持久化的了。

nowait就是不管写没写完,都告诉客户端完成了。可能会导致数据的的丢失,但是速度更快了。


commit_logging

commit_logging 可以设置成 immeidate 和 batch,控制是否批量

immediate 使日志写入进程(LGWR)将事务的重做信息写入日志。 此操作选项强制磁盘IO,因此可以降低事务吞吐量。

batch 会先缓存事务的redo,达到一定的量后再写入到log中,这称为"组提交".

默认是immediate模式


commit_wait

commit_write参数只在Oracle 10gR2中有效,在oracle 11g中被commit_logging和commit_wait取代。

相关文章
|
SQL 运维 Oracle
Oracle 超时设置2:设置实例级参数
Oracle超时设置系列的第二篇文章,设置实例级参数
576 0
|
5月前
|
Oracle 关系型数据库 Java
Oracle 19c 查看隐含参数视图
Oracle 19c 查看隐含参数视图
84 7
|
5月前
|
SQL 监控 Oracle
Oracle 性能优化之AWR、ASH和ADDM(含报告生成和参数解读)
Oracle 性能优化之AWR、ASH和ADDM(含报告生成和参数解读)
|
5月前
|
运维 Oracle 关系型数据库
Oracle服务器参数文件:数据王国的“调控大师”
【4月更文挑战第19天】Oracle服务器参数文件,数据库的“调控大师”,掌控着内存管理、进程调度等关键设置。通过参数调整如SGA_MAX_SIZE和PROCESSES,实现性能优化和故障防控。虽然挑战重重,但成功的性能调优带来无尽成就感。它在备份恢复中也扮演重要角色,保障数据一致性与可用性。成为真正的“调控大师”,为数据王国效力!
|
5月前
|
存储 SQL Oracle
【Oracle】玩转Oracle数据库(二):体系结构、存储结构与各类参数
【Oracle】玩转Oracle数据库(二):体系结构、存储结构与各类参数
99 7
|
5月前
修改oracle11g的awr快照参数
修改oracle11g的awr快照参数
36 0
|
5月前
|
SQL Oracle 关系型数据库
oracle查询数据库参数sql语句
oracle查询数据库参数sql语句
|
Oracle 前端开发 关系型数据库
使用隐含参数_disable_logging分析oracle写redo logfile的性能
oracle有一个隐含参数_disable_logging可以禁止日志的生成,这个参数当然不能在生产库使用,但我们可以将其因为与测试,例如,如果我们怀疑数据库写redo logfile存在性能问题,我们可以将这个参数设置为true,禁止写日志,看看oracle的性能提高了多少。