当前位置: 首页 > wzjs >正文

网站更新维护页面企业名录2022版

网站更新维护页面,企业名录2022版,大良营销网站建设价格,企业手机网站建设定制Oracle 11g 中的 UPDATE 操作是数据库修改数据的关键机制,其核心原理涉及事务管理、多版本并发控制(MVCC)、Undo/Redo 日志、锁机制等 1. 执行前的准备 SQL 解析与执行计划: Oracle 解析 UPDATE 语句,生成执行计划&…

Oracle 11g 中的 UPDATE 操作是数据库修改数据的关键机制,其核心原理涉及事务管理、多版本并发控制(MVCC)、Undo/Redo 日志、锁机制

1. 执行前的准备

  • SQL 解析与执行计划
    Oracle 解析 UPDATE 语句,生成执行计划,确定目标数据的位置(通过索引或全表扫描)。

  • 缓冲区缓存(Buffer Cache)检查
    Oracle 首先在内存的缓冲区缓存中查找目标数据块。

    • 若数据块已在缓存中,直接修改内存中的副本。

    • 若不在缓存中,从磁盘读取数据块到缓冲区缓存。

2. 事务启动与锁机制

  • 行级锁(Row-Level Lock)
    Oracle 对目标行加排他锁(Exclusive Lock),阻止其他事务修改同一行,但允许其他事务通过 SELECT 读取(读一致性由 MVCC 保证)。

  • 事务槽分配
    在回滚段(Undo 段)中分配事务槽,记录事务 ID(XID)和系统变更号(SCN)。

 

3. 生成 Undo 数据

  • 旧版本数据保存
    在修改数据前,Oracle 将原始数据(即修改前的值)写入 Undo 表空间,用于支持事务回滚和读一致性。

    • 例如,若执行 UPDATE employees SET salary=10000 WHERE id=1,原 salary=8000 会被写入 Undo 段。

  • Undo 的作用

    • 事务回滚时恢复原始数据。

    • 其他事务查询时,若数据已被修改但未提交,通过 Undo 数据提供一致性视图

4. 修改数据块

  • 更新缓冲区缓存中的数据块
    在内存中修改目标行的数据,标记数据块为“脏块”(Dirty Block)。

  • 行迁移(Row Migration)处理
    如果更新后的行长度超出原数据块的空闲空间,Oracle 可能将整行迁移到新数据块,并在原位置保留指向新块的指针(称为行链接或行迁移)

 

5. 生成 Redo 日志

  • 记录变更操作
    所有修改操作(包括数据块和 Undo 段的变更)会生成 Redo 日志条目,写入日志缓冲区(Log Buffer)。

    • Redo 日志确保事务的持久性(Durability),即使系统崩溃也能恢复。

  • 日志写入策略

    • 提交事务时,日志缓冲区中的 Redo 条目由 LGWR 进程写入磁盘的 Redo 日志文件。

    • 未提交的事务也可能部分写入 Redo 日志(由 LGWR 定期刷新)。

6. 提交事务

  • 事务提交(COMMIT)

    • 释放行级锁,但 Undo 数据仍保留(直到不再被读一致性查询需要)。

    • LGWR 将剩余 Redo 日志写入磁盘,确保事务持久化。

    • 更新数据块的 SCN(System Change Number),标记为已提交。

  • 快速提交优化
    Oracle 使用延迟块清除(Delayed Block Cleanout)机制,将部分清理工作推迟到后续访问数据块时执行,减少提交时的开销。

 

7. 数据持久化到磁盘

  • 脏块写入数据文件
    由 DBWn(Database Writer)后台进程将缓冲区缓存中的脏块异步写入磁盘数据文件。

    • 写入时机:检查点触发、缓冲区缓存不足、或定期刷新。

8. 多版本并发控制(MVCC)

  • 读一致性(Read Consistency)
    其他事务查询时,若目标数据正在被修改(未提交),Oracle 通过 Undo 数据构造该事务开始时的数据版本(基于查询的 SCN)。

  • 避免脏读
    未提交的修改对其他事务不可见,确保隔离性。

 关键组件协同

组件作用
Undo 表空间存储旧数据,支持回滚和读一致性。
Redo 日志记录所有变更操作,用于崩溃恢复。
Buffer Cache内存缓存数据块,减少物理 I/O。
DBWn将脏块写入磁盘数据文件。
LGWR将 Redo 日志写入磁盘日志文件。

 


文章转载自:

http://E8ZRsKTO.tkfLb.cn
http://fkgdYBfV.tkfLb.cn
http://cHlUHtfP.tkfLb.cn
http://tkQggKfC.tkfLb.cn
http://eZcbo8Aw.tkfLb.cn
http://yKttKezR.tkfLb.cn
http://Exk6rRxv.tkfLb.cn
http://D8VXFJJA.tkfLb.cn
http://iAVGzC1h.tkfLb.cn
http://ayAN9UO4.tkfLb.cn
http://3sr0sBNA.tkfLb.cn
http://uSoS6XtO.tkfLb.cn
http://ShvU2kyZ.tkfLb.cn
http://nXvICWqg.tkfLb.cn
http://rTybsnHK.tkfLb.cn
http://gSlRk7n6.tkfLb.cn
http://nVdBRdb9.tkfLb.cn
http://jYvPXDKu.tkfLb.cn
http://XGT6D1YC.tkfLb.cn
http://A4zIulOk.tkfLb.cn
http://7qZiaSXs.tkfLb.cn
http://jcbX1fNv.tkfLb.cn
http://3cClaurs.tkfLb.cn
http://RfzZhUrc.tkfLb.cn
http://jg1jJ0Yz.tkfLb.cn
http://KwDAJuTj.tkfLb.cn
http://5Gcql80b.tkfLb.cn
http://FRguAL2y.tkfLb.cn
http://iXyPs1xM.tkfLb.cn
http://ezqweadt.tkfLb.cn
http://www.dtcms.com/wzjs/664783.html

相关文章:

  • 国内设计大神网站中国平安财产保险公司官网
  • 榆林网站优化北京网站优化常识
  • 江门网页模板建站江苏省建设科技发展中心网站简介
  • 网站开发培训学院wordpress ajax 文件上传
  • 深圳商城网站设计费用艺麟盛世可以做网站推广吗
  • 微网站建设费用广州有做虚拟货币网站
  • 宜昌网站推广优化技巧wordpress照片评选插件
  • 推广网站出现中性产品沈阳seo推广
  • 网站开发 合同范本网络促销分类 网站促销
  • 余姚网站定制做网单哪个网站最好用
  • 网站关键字工具wordpress没有侧边栏
  • 机加工外协网站网站开发工程师应聘书700字
  • 天津企业网站建站模板长沙seo优化排名推广
  • 安徽省建设工程信息网官方网站世界杯消息哪个门户网站做的好
  • 巴中做网站公司广西网站建设营销公司
  • 湘潭企业网站建设 磐石网络凯里网站建设流程
  • 同仁县公司网站建设网站版式设计说明
  • 水墨背景风格企业网站模板宁波网站制作公司排名
  • 直播网站建设费用玩具电子商务网站建设论文
  • 网站流量超wordpress静态化nginx
  • 网站开发赚钱html网站开发工具下载
  • 网站如何做微信支付宝支付宝支付宝接口平面设计培训班学费一般要多少钱
  • 深圳做网站的公html个人网站源码
  • 网站页面优化方法jsp简述网站开发流程图
  • thinkphp旅游网站源码浙江省建设政务网站
  • 建设部电教中心网站html5微网站源码
  • 江西住房城乡建设网站摄影师网站制作
  • 织梦图片自适应网站源码word模板免费下载素材
  • 手机访问pc网站自动跳转手机端网站代码汽车装饰网站模板
  • 湖南网站推广公司一般通过逸民