当前位置:七道奇文章资讯数据防范MySQL防范
日期:2011-01-25 22:43:00  来源:本站整理

<b>MySQL数据库锁机制的相关原理简介</b>[MySQL防范]

赞助商链接



  本文“<b>MySQL数据库锁机制的相关原理简介</b>[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

差别于行级或页级锁定的选项:

· 版本(比方,为并行的插入在MySQL中利用的技术),此中可以一个写操作,同时有很多读取操作.这明数据库或表支持数据依靠的差别视图,取决于拜候什么时刻开始.别的共同的术语是“时间跟踪”、“写复制”大概“按需复制”.

· 按需复制在很多情形下优先于页级或行级锁定.但是,在最坏的情形下,它大概比利用通例锁定利用多的内存.

· 除了行级锁定外,你可以利用利用程序级锁定,比方在MySQL中利用GET_LOCK()和RELEASE_LOCK().这些是倡议性锁定,它们只能在运行杰出的利用程序中工作.

为到达最高锁定速度,除InnoDB 和BDB 之外,对全部存储引擎,MySQL利用表锁定(而不是页、行大概列锁定).关于InnoDB 和BDB 表,假如你用LOCK TABLES显式锁定表,MySQL只利用表锁定;假如你不利用LOCK TABLES,因为 InnoDB 利用自动行级锁定而BDB 利用页级锁定来保证事件断绝.

但是关于大表,关于大大都利用程序,表锁定比行锁定更好,但存在部份缺陷.表锁定使很多线程同时从一个表中举行读取操作,但假如一个线程想要对表举行写操作,它必须首先得到独占拜候.更新期间,全部别的想要拜候该表的线程必须等候直到更新完成.

表更新普通情形认为比表检索更重要,因此赐与它们更高的优先级.这应确保更新一个表的活动不能“饿死”,即便该表上有很沉重的SELECT 活动.

表锁定在这种情形下会造成问题,比方当线程正等候,因为硬盘已满并且在线程可以处理之前必须有闲暇空间.在这种情形下,全部想要拜候呈现问题的表的线程也被设置成等候状况,直到有更多的硬盘空间可用.

表锁定在下面的情形下也存在问题:

· 一个客户发出长时间运行的查询.

· 然后,另一个客户对同一个表举行更新.该客户必须等候直到SELECT完成.

· 另一个客户对同一个表上发出了另一个 SELECT 语句.因为UPDATE比 SELECT 优先级高,该SELECT 语句等候UPDATE完成,并且等候第1个 SELECT 完成.


  以上是“<b>MySQL数据库锁机制的相关原理简介</b>[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .