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

网站建设 软件有哪些内容佛山网站维护

网站建设 软件有哪些内容,佛山网站维护,网店运营推广的概念,通过付费网站做lead多版本并发控制#xff08;MVCC#xff09;是一种用于数据库并发控制的机制#xff0c;它可以在保证数据一致性的同时#xff0c;提高数据库的并发性能。下面结合 MVCC 机制#xff0c;详细阐述常见的四种事务隔离级别#xff08;读未提交、读已提交、可重复读、串行化MVCC是一种用于数据库并发控制的机制它可以在保证数据一致性的同时提高数据库的并发性能。下面结合 MVCC 机制详细阐述常见的四种事务隔离级别读未提交、读已提交、可重复读、串行化与各种锁共享锁、排他锁、记录锁、间隙锁、临键锁之间的关系。 读未提交Read Uncommitted MVCC 机制在该隔离级别下MVCC 机制基本不发挥作用。因为此隔离级别允许一个事务读取另一个未提交事务的数据它更侧重于提高并发性能而不是通过 MVCC 来保证数据的一致性。事务在读取数据时不会基于 MVCC 去判断数据版本而是直接读取最新的数据无论该数据是否已经提交。共享锁S 锁和排他锁X 锁 此隔离级别对锁的使用进行了极大程度的弱化。一般情况下普通的读操作不会加共享锁写操作如 UPDATE、DELETE、INSERT虽可能会对受影响的行加排他锁但这种锁的限制作用相对较弱因为即使有排他锁存在其他事务也能读取未提交的数据会导致脏读。 记录锁、间隙锁和临键锁 通常不会使用记录锁、间隙锁和临键锁。由于不依赖 MVCC 来保证数据一致性也不需要这些锁来防止不可重复读和幻读问题。 读已提交Read Committed MVCC 机制MVCC 在该隔离级别中发挥重要作用。普通的 SELECT 查询采用快照读基于 MVCC 读取已提交的数据版本。每个语句执行时都会生成一个新的快照这使得在同一个事务内不同时刻执行相同的查询可能会得到不同的结果从而可能出现不可重复读的问题。共享锁S 锁和排他锁X 锁 共享锁普通的 SELECT 查询默认不会加共享锁而是利用 MVCC 进行快照读。但当使用 SELECT ... LOCK IN SHARE MODE 时会对查询结果集的行加共享锁允许其他事务同时读取这些行但阻止其他事务对这些行加排他锁进行修改。排他锁UPDATE、DELETE、INSERT 语句以及 SELECT ... FOR UPDATE 会对受影响的行加排他锁。并且这些锁是语句级别的即锁只在语句执行期间有效语句执行完毕后锁就会释放。 记录锁、间隙锁和临键锁 记录锁在执行 SELECT ... FOR UPDATE 或写操作时会对读取或修改的行加记录锁。间隙锁和临键锁一般不会使用间隙锁和临键锁。因为 MVCC 的快照读机制和语句级别的锁控制使得该隔离级别允许幻读的存在无法阻止其他事务在查询范围的间隙插入新记录。 可重复读Repeatable Read MVCC 机制MVCC 是该隔离级别实现可重复读特性的关键。在事务开始时会创建一个全局的快照事务内的所有 SELECT 查询都基于这个快照进行保证在同一个事务内多次读取相同数据的结果是一致的。不过对于当前读操作如 SELECT ... FOR UPDATE、UPDATE、DELETEMVCC 机制与锁机制共同作用来保证数据的一致性。共享锁S 锁和排他锁X 锁 共享锁普通 SELECT 查询采用快照读不会加共享锁。使用 SELECT ... LOCK IN SHARE MODE 时会对查询结果集的行加共享锁防止其他事务对这些行加排他锁进行修改。排他锁UPDATE、DELETE、INSERT 语句以及 SELECT ... FOR UPDATE 会对受影响的行加排他锁。这些锁会在事务结束提交或回滚时才释放。 记录锁、间隙锁和临键锁 记录锁在执行 SELECT ... FOR UPDATE 或写操作时会对读取或修改的行加记录锁。间隙锁当进行范围查询如 SELECT ... FOR UPDATE 或写操作涉及范围条件且查询条件没有精确匹配到所有记录时会对查询范围对应的间隙加上间隙锁防止其他事务在这些间隙插入新记录。这是为了弥补 MVCC 在处理范围插入时可能出现幻读的不足。临键锁临键锁是记录锁和间隙锁的组合。在可重复读隔离级别下对于索引记录InnoDB 通常使用临键锁来防止幻读。例如对唯一索引进行等值查询时如果记录存在使用记录锁如果记录不存在使用间隙锁对于普通索引一般使用临键锁。 串行化Serializable MVCC 机制在串行化隔离级别下MVCC 机制基本不发挥作用。因为该隔离级别要求事务串行执行所有的读写操作都需要排队进行以保证数据的绝对一致性。它不依赖 MVCC 的多版本特性来处理并发而是通过严格的锁机制来实现事务的隔离。共享锁S 锁和排他锁X 锁 共享锁普通的 SELECT 查询会自动对查询结果集的行加共享锁保证在当前事务读取数据期间其他事务不能对这些数据加排他锁进行修改。排他锁UPDATE、DELETE、INSERT 语句会自动对受影响的行加排他锁。由于事务是串行执行的任何事务的读写操作都需要等待前面事务释放相应的锁并发性能最差但能完全避免脏读、不可重复读和幻读问题。 记录锁、间隙锁和临键锁 在串行化隔离级别下记录锁、间隙锁和临键锁都会被使用以确保事务之间的完全隔离。无论是读取还是修改数据都会通过这些锁来保证同一时间只有一个事务可以访问特定的数据资源从而实现事务的串行执行。 综上所述MVCC 机制和锁机制在不同的事务隔离级别中相互配合共同影响着数据库的并发性能和数据一致性。较低的隔离级别更依赖 MVCC 来提高并发性能而较高的隔离级别则更强调锁机制来保证数据的严格一致性。
http://www.hkea.cn/news/14586784/

相关文章:

  • 同性恋色做视频网站珠海网站建设推广
  • 小型公司建网站一个网站备案两个域名吗
  • 浙江网站建设推荐专业做网站 优帮云
  • 源码站自助建站信息发布网企业
  • 网站的下拉列表怎么做做网站设计的
  • 做外贸网站卖什么好处书签制作方法视频
  • 运城姚孟网站建设如何利用网络平台挣钱
  • 陕西有色建设有限公司官方网站做ppt图片网站 知乎
  • 网站开发税率是多少小制作小发明做法
  • 站外推广策划书理财网站建设方案书
  • 网站制作的服务怎么样php多语言网站开发
  • 网站导航设计法则网络建设公司经营范围
  • 企业网站建设因素分析网站建设参考文献英文书籍
  • 网站代码加密wordpress 企业主题 免费
  • 可以进网站的软件店铺设计合同
  • 保定电子网站建设备案怎么关闭网站
  • 恩施做网站多少钱养一个空壳公司的好处
  • 新闻静态网站模板下载临沂网站制作定制
  • 直播做网站建设网站好学吗
  • 天津做网站外包公司有哪些网站建设需要哪些费用支出
  • 网站备案号怎么查wordpress 点赞 ajax
  • 做网站 创业 流程做网站每年需要多少维护费
  • 洛阳网络建站山东网站建设维护
  • 自做美食哪些网站徐汇苏州网站建设
  • 大型建站网站淘宝做seo要建网站吗
  • 广西网站建设软件推广上海网站建设 觉策动力
  • 网络科技公司名字大全集seo专员是什么
  • 太仓市住房和城乡建设局官方网站微信运营专员是什么工作
  • 手机网站开发ios数字资产币币交易所网站开发
  • 如何进入一个网站开发人员工具正规网站建设报价