Oracle Internal之Block Cle…

本文详细解释了Oracle数据库中Block Cleanout的概念及其两种类型:快速Block Cleanout和延迟Block Cleanout。介绍了在事务提交过程中如何清理数据块中的事务数据,包括Row Locks和ITL条目等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为什么会有Block Cleanouts? Oracle server在执行一个交易(transaction)时会保存交易数据在数据块(data block)本身,并且一个交易有可能修改大量的数据块,因此交易需要清理这些在数据块自己上的交易数据当一个交易完成commit。
那些东西需要cleaned out?
<wbr> 1. Row Locks<br><wbr> 2. ITL Entry:<br><wbr><wbr><wbr><wbr><wbr> - Commit flags<br><wbr><wbr><wbr><wbr><wbr> - Free Space Credit/Commit SCN<br><br> Deferred Block Cleanout:<br><wbr><wbr> A transaction commit was a simple update to the relevant undo segment header.<br><wbr><wbr> The data block cleanout was left to the next reader of the modified block<br> Fast Block Cleanout: This is the default action.<br><wbr><wbr> Modified blocks are 'memorized' by a transaction. On transaction commit, cleanout is attempted<br><wbr><wbr> on those blocks in memory(up to a limit 20 blocks). For any blocks above this threshold, or<br><wbr><wbr> aged out of memory, or currently pinned by another process deferred block cleanout will be<br><wbr><wbr> still used.<br></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值