范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

MySQL从入门到精通(九)MySQL锁,各种锁

  一、mysql锁的概述
  锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,除传统的计算资源(CPU、RAM、I/O)争用外,数据也是一种供许多用户共享的资源,如何保证数据并发访问的一致性,有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素,从这个角度来说,锁对数据库而言是尤其重要,也更加复杂。MySQL中的锁,按照锁的粒度分为:1、全局锁,就锁定数据库中的所有表。2、表级锁,每次操作锁住整张表。3、行级锁,每次操作锁住对应的行数据。二、MySQL全局锁
  全局锁就是对整个数据库实例加锁,加锁后整个实例就处于只读状态,后续的DML的写语句,DDL语句,已经更新操作的事务提交语句都将阻塞。其典型的使用场景就是做全库的逻辑备份,对所有的表进行锁定,从而获取一致性视图,保证数据的完整性。但是对数据库加全局锁是有弊端的,如在主库上备份,那么在备份期间都不能执行更新,业务会受影响,第二如果是在从库上备份,那么在备份期间从库不能执行主库同步过来的二进制日志,会导致主从延迟。
  解决办法是在innodb引擎中,备份时加上--single-transaction参数来完成不加锁的一致性数据备份。
  添加全局锁: flush tables with read lock; 解锁 unlock tables。三、表级锁
  表级锁,每次操作会锁住整张表.锁定粒度大,发送锁冲突的概率最高,并发读最低,应用在myisam、innodb、BOB等存储引擎中。表级锁分为: 表锁、元数据锁(meta data lock, MDL)和意向锁。
  表锁又分为: 表共享读锁 read lock、表独占写锁write lock
  语法: 1、加锁 lock tables 表名 ... read/write
  2、释放锁 unlock tables 或者关闭客户端连接
  注意: 读锁不会阻塞其它客户端的读,但是会阻塞其它客户端的写,写锁既会阻塞其它客户端的读,又会阻塞其它客户端的写。大家可以拿一张表来测试看看。
  元数据锁,在加锁过程中是系统自动控制的,无需显示使用,在访问一张表的时候会自动加上,MDL锁主要作用是维护表元数据的数据一致性,在表上有活动事务的时候,不可以对元数据进行写入操作。为了避免DML和DDL冲突,保证读写的正确性。
  在MySQL5.5中引入了MDL,当对一张表进行增删改查的时候,加MDL读锁(共享);当对表结构进行变更操作时,加MDL写锁(排他).
  对应SQL
  锁类型
  说明
  lock tables xxx read/write
  shared_read_only/shared_no_read_write
  select/select ... lock in share mode
  shared_read
  与shared_read/shared_write兼容,与exclusive互斥
  insert/update/delete,select ... for update
  shared_write
  与shared_read/shared_write兼容,与exclusive互斥
  alter table ...
  exclusive
  与其它的DML都互斥
  查看元数据锁:
  select object_type,object_schema,object_name,lock_type,lock_duration from performance_schema_metadata_locks;
  意向锁,为了避免DML在执行时,加的行锁与表锁的冲突,在innodb中引入了意向锁,使得表锁不用检查每行数据是否加锁,使用意向锁来减少表锁的检查。意向锁分为,意向共享锁is由语句select ... lock in share mode添加。意向排他锁ix,由insert,update,delete,select…for update 添加。
  select object_schema,object_name,index_name,lock_type,lock_mode,lock_data from performance_schema.data_lock;四、行级锁
  行级锁,每次操作锁住对应的行数据,锁定粒度最小,发生锁冲突的概率最高,并发读最高,应用在innodb存储引擎中。
  innodb的数据是基于索引组织的,行锁是通过对索引上的索引项加锁来实现的,而不是对记录加的锁,对于行级锁,主要分为以下三类:
  1、行锁或者叫record lock记录锁,锁定单个行记录的锁,防止其他事物对次行进行update和delete操作,在RC,RR隔离级别下都支持。
  2、间隙锁Gap lock,锁定索引记录间隙(不含该记录),确保索引记录间隙不变,防止其他事物在这个间隙进行insert操作,产生幻读,在RR隔离级别下都支持。
  3、临键锁Next-key-lock,行锁和间隙锁组合,同时锁住数据,并锁住数据前面的间隙Gap,在RR隔离级别下支持。
  innodb实现了以下两种类型的行锁
  1、共享锁 S: 允许一个事务去读一行,阻止其他事务获得相同数据集的排他锁。
  2、排他锁 X: 允许获取排他锁的事务更新数据,阻止其他事务获得相同数据集的共享锁和排他锁。
  insert 语句 排他锁 自动添加的
  update语句 排他锁 自动添加
  delete 语句 排他锁 自动添加
  select 正常查询语句 不加锁 …
  select …lock in share mode 共享锁 需要手动在select 之后加lock in share mode
  select …for update 排他锁 需要手动在select之后添加for update
  默认情况下,innodb在repeatable read事务隔离级别运行,innodb使用next-key锁进行搜索和索引扫描,以防止幻读。针对唯一索引进行检索时,对已存在的记录进行等值匹配时,将会自动优化为行锁innodb的行锁是针对于索引加锁的,不通过索引条件检索数据,那么innodb将对表中的所有记录加锁,此时就会升级为表锁。索引上的等值查询如唯一索引,给不存在的记录加锁时,优化为间隙锁。索引上的等值查询如普通索引,向右遍历时最后一个值不满足查询需求时,next-key lock退化为间隙锁。索引上的范围查询如唯一索引,会访问到不满足条件的第一个值为止。
  间隙锁唯一目的是防止其它事务插入间隙,间隙锁可以共存,一个事务采用的间隙锁不会阻止另一个事务在同一间隙上采用的间隙锁。

别再盲目美白了,这瓶无限极产品面霜真管用一到春夏,美白又一次被拎上热搜!我是去海边玩被晒黑的,知道现在还是没能白回来,脸蛋摸上去老粗糙了!苦恼之际,我收到了闺蜜寄来的无限极产品萃雅美白日霜。春节回家时,我给姐姐用了这款,无限极老板帮助提升大众健康素养不论时代如何发展变化,健康始终是人类永恒的需求。基于中华数千年优秀的养生文化,其中的三调养四合理为社会大众提供了一套简单实用的养生方法。围绕这一理念,无限极不断推出形式多样的活动,深入原材料种植基地,从源头把控无限极产品品质健康产业作为朝阳产业,吸引了无限极多企业争相而入,其中中草药健康产品和服务成为重要载体之一,在企业和人们的健康需求之间架起一道桥梁。可以说,提供高品质的健康产品是企业获得公众信任,面对社交电商如何更具竞争力?无限极直销是这样做的直销,按照国际上的定义叫做无店铺销售,在过去很长一段时间里面,很多直销企业,无论是国际的还是国内的本土企业,如无限极直销,在这个模式之下做得非常和谐,其店铺体系也能够很好地发展。不无限极产品为了减肥一直不吃饭,第几天会受不了?嗨今天给大家种草无限极产品能量棒!介绍之前,我先问问大家一个问题为了减肥一直不吃饭,第几天会受不了?不吃饭,一直是减肥人群热衷的方法之一,特别是认为戒掉晚餐效果更好。但日本大阪大学无限极产品顾客至上,严控品质,坚持创新产品无限极自面市以来,已经在健康养生行业深耕29年,多年来一直致力于弘扬中华中草药文化,并致力于为消费者带来更多健康产品,顾客至上,严控品质,也使得无限极成为了健康行业的巨头之一。中药李锦记家族守护舌尖上的品质,未来继续为消费者带来好产品李锦记自创立以来,一直守护消费者的品质生活,不断创新为消费者带来好产品,2021年,凭借着不断提升产品质量,缔造品质生活等方面的综合表现,李锦记家族集团荣获质量品牌联盟品质奖。此次李锦记家族经营之道不晚婚,不离婚,不有婚外情家和万事兴,凡事都要以家庭和睦为重,家庭才会幸福和温暖。家和对一个家族兴衰的决定性作用,李锦记设立了三不原则不要晚结婚,不准离婚,不准有婚外情。如果有人离婚或有婚外情,需自动退出董无限极直销内卷为何引发热议,又该如何面对内卷一词最初是由美国人类学家克里福德吉尔兹提出的,他在研究爪哇岛农业社会后,1963年出版了农业内卷印度尼西亚的生态变迁过程一书,以此描述一种没有发展的劳动力密集投入。尤其在996蒯佳祺京东到家巩固超市O2O龙头地位海博系统上线门店超4300家9月8日,达达集团(纳斯达克股票代码DADA)发布了截至2021年6月30日的第二季度业绩。达达集团二季度营收为15亿元人民币,将对比期间落地配业务统一调整为净额收入口径后,同比增2021联想智慧中国行亮相杭城分享中小企业数字化升级全新思路当今世界正经历百年未有之大变局,新一代信息技术正在引领新一轮的科技革命和产业变革,数字经济正在蓬勃发展,在数字浪潮的冲击下,中小企业竞争格局发生巨变,而主动拥抱数字化变革的企业获得
无人驾驶概念再度走强,长安汽车涨停,机构看好细分赛道相关标的金融界网5月12日消息,无人驾驶概念早盘大幅拉升,亚太股份长安汽车涨停,润和软件诚迈科技北汽蓝谷路畅科技等多股跟涨。此前,4月17日,北汽新能源旗下高端品牌极狐联合华为发布了极狐阿小米MIUI联手QQ音乐,推出新版音乐App5月11日,MIUI官宣,小米音乐与QQ音乐达成合作,为小米用户打造极致听觉盛宴!QQ音乐表示,这次合作为用户带来双重升级惊喜丰富内容升级,听歌体验升级。小米手机用户只需到小米应用如何看待DxOMark新出的电池评测项目,哪些机型表现较出色?谢邀!有一说一,虽然DxOMark最近在国内受到很多人的质疑,说它恰饭,不过它给出的评测还是值得一看的,虽然不能全信,但还是有一定的参考价值。至于它的电池评测项目,因为是新出的,所中国联通移动电信哪个好,请告诉我?北方联通,南方电信。至于移动,它的宽带网络不太稳定。优势在于价格比较便宜。只知道移动最差没电脑也可以拉网,三家运营商的宽带我都装过,位置广州番禺,首选是移动,移动除了便宜些且下载速美团再爆大雷1000多万骑手全为外包,骑手出事与美团无直接关系大家好,我是节税网123的小编小税,随着外卖行业的飞速发展,现在我们用手机点个餐最快十几二十分钟就可以送到我们面前,当然这里面除了有平台的搭建,还有付出辛苦劳动的外卖小哥。而外卖小使用安卓和苹果系统真的能被美国监控么?能获取到信息那是无疑的,但是对于庞大的数据来说,可能筛选出有价值的信息很难,然后对于普通个人的隐私什么的不会兴趣。掌握国家机密信息的工作人员才需要防备这些。唯一需要担心的是,哪怕苹国产焊接机器人你了解多少?焊接机器人改变制造业是有原因的。焊接机器人提供了人工焊接所达不到的好处。焊接机器人的工作效率高。焊接机器人完成任务的速度比手焊接操作的要快,而且正常操作时间明显更长。速度和正常运行我不喜欢微信,但更害怕Soul在中国移动互联网多年发展的过程中,很多大佬想在社交领域有所作为局。雷军搞了米聊,张一鸣推出过多闪,快播的创始人王欣做过一款叫马桶MT的软件,想要打破微信独霸天下的沉闷格局。然而无一近期发布的新机盘点相信总有你喜欢的手机行业最近也很热闹,发布了不少5G新机。我们一起来盘点下近期发布的高关注度新机,看看有没有你喜欢的。OPPOK95月6日,OPPO举行了K9系列超次元发布会,发布了多款产品,其中华为畅连通话推出朋友圈功能,这是要和微信正面PK了吗?关注科技百话,带给你不一样的科技讯息!说起华为的畅连通话,可能很多人并不清楚它到底是什么,更没有自身体验过这个软件,但其作为华为多终端无缝畅连场景的核心,一直以来都处在飞速发展和优迭代过快二手新能源汽车遇冷高质量能源内容,点击右上角加关注数据显示,今年3月,我国新能源汽车销量22。6万辆,同比增长2。4倍,但与此同时,根据相关数据估算,我国二手新能源汽车交易量不足二手车总交易量的2。