1、什么是锁?

一种保护机制,在多线程的情况下,保证操作数据的正确性与一致性

2、锁有哪些分类?

悲观锁、乐观锁、独占锁、共享锁、公平锁、非公平锁、分布式锁、自旋锁

3、谈谈悲观锁乐观锁:
指的是看待并发同步的角度,一般结合数据库将,以MySQL为例,悲观锁主要是表锁,行锁和间隙锁,叶锁,读锁,因为这些锁在被触发时会引起线程阻塞,所以叫悲观锁;而乐观锁其实在MySQL中本身不存在,但是MySQL提供了MVCC的机制,支持乐观锁机制

4、什么是MVCC?

只有在InnoDB引擎下存在,MVCC是为了实现事务的隔离性,通过版本号,避免同一数据在不同事务间的竞争,所说的乐观锁只在事务级别未提交锁和已提交锁时才会生效

5、具体MVCC机制有什么?

多版本并发控制,保证数据操作在多线程过程中,保证事务隔离的机制,可以降低锁竞争的压力,保证较高的并发量。在每开启一个事务时,会生成一个事务的版本号,被操作的数据会生成一条新的数据行(临时),但是在提交前对其他事务是不可见的,对于数据的更新操作成功,会将这个版本号更新到数据的行中,事务提交成功,将新的版本号更新到此数据行中,这样保证了每个事务操作的数据,都是互不影响的,也不存在锁的问题

6、在多个事务操作同一条数据的并发过程中,谁先成功?

mysql判断,先提交的先成功

7、谈谈事务。

事务常说一系列操作作为一个整体要么都成功要么都失败,主要特性acidÿ

MySQL之MVVC相关推荐

  1. mysql取消mvvc机制_MySQL之MVVC简介

    MySQL之MVVC简介 一丶什么是MVVC? MVVC (Multi-Version Concurrency Control) (注:与MVCC相对的,是基于锁的并发控制,Lock-Based Co ...

  2. MySQL之MVVC简介

    MySQL之MVVC简介 一丶什么是MVVC? MVVC (Multi-Version Concurrency Control) (注:与MVCC相对的,是基于锁的并发控制,Lock-Based Co ...

  3. mysql取消mvvc机制_MySQL探秘(六):InnoDB一致性非锁定读

    一致性非锁定读(consistent nonlocking read)是指InnoDB存储引擎通过多版本控制(MVVC)读取当前数据库中行数据的方式.如果读取的行正在执行DELETE或UPDATE操作 ...

  4. MySQL之MVVC简单介绍

    1.什么是锁? 一种保护机制,在多线程的情况下,保证操作数据的正确性与一致性 2.锁有哪些分类? 悲观锁.乐观锁.独占锁.共享锁.公平锁.非公平锁.分布式锁.自旋锁 3.谈谈悲观锁乐观锁: 指的是看待 ...

  5. mysql mvcc

    mysql MVCC MVVC 实现:排他锁+undolog+版本事务链+一致性read-view视图+版本事务链匹配规则 一致性非锁定读 在 InnoDB 存储引擎中,多版本控制 (multi ve ...

  6. java服务器访问接口提示network error_北京JAVA开发三年,拿到美团35K的offer面试心得...

    前言 长文干货提示,文章为大家完整记录了一位在北京做了3年的JAVA开发的朋友,如何通过美团的面试及拿到35K的offer.全篇内容由全程电话录音再手打腾稿,原创手打不易,请记得三连支持! 文章末尾有 ...

  7. 美团Java后台一面

    美团Java后台面试 面试题 面试自我评价 面试复盘和建议 最后 昨天刚参加美团Java后台一面,面试难度8分,面经分享给大家. 面试题 本文不提供答案,哈哈哈 自我介绍 用什么技术栈 在线编程2道 ...

  8. 2022年整理最详细的java面试题、掌握这一套八股文、面试基础不成问题[吐血整理、纯手撸]

    这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 1.面向对象 2.JDK.JRE.JVM区别和联系 3.==和equals 4.final 5.String .Strin ...

  9. 腾讯csig java后端一、二、三面经

    群友分享 由于投的是java后端工程师,面试官没怎么问我语言相关问题 一面 3月10日 面试时间:45min 1.自我简绍 2.MySQL隔离级别.实现原理.锁.索引 3.HTTP 与 HTTPS 4 ...

最新文章

  1. 关于code reiview
  2. 病毒周报(081110至081116)
  3. [Android]用架构师角度看插件化(3)-Replugin 需要占坑跳转?
  4. 生成和合入patch的两种方式
  5. Java面试宝典之开源框架!
  6. 38 | 案例篇:怎么使用 tcpdump 和 Wireshark 分析网络流量?
  7. 滴滴java开发面试题_Java开发经典面试题(十二)
  8. 【软件开发底层知识修炼】十九 GDB调试从入门到熟练掌握超级详细实战教程学习目录
  9. 大数据中,机器学习和数据挖掘的联系与区别
  10. 效果直逼flash的Div+Css+Js菜单
  11. Android Activity界面切换添加动画特效 (转载修改)
  12. c ++向量库_C ++中的2D向量–实用指南2D向量
  13. rdp如何禁止映射本地磁盘_什么是磁盘阵列?什么是NAS?该怎么选择?
  14. Beta冲刺Day4
  15. Adobe Flash runtimes路线图
  16. X-Scan-v3.3 漏洞扫描工具使用
  17. 微信小程序实时定位的要做的那些事,你学废了吗?(附示例)
  18. 全赔你们要1200亿!知网哭穷:我们一年净赚还不到2亿
  19. 特征工程-特征提取:字典特征提取、文本特征提取、jieba分词处理、Tf-idf文本特征提取
  20. python中集合可以使用下标吗_Python之集合

热门文章

  1. OFFICE1:EXCEL、WPS表格数据处理,三种多列合并为一列,用法和原理详解。
  2. java锁上升_Java内存模型FAQ(十一)新的内存模型是否修复了双重锁检查问题?...
  3. 十年程序员教你接私活完整攻略!
  4. 二维码生成与识别 API 结合之活动签到系统的设计与实现
  5. WifiInfo(二)
  6. Nginx+Vue.js+Tornado前后端分离架构环境实践(1)
  7. 同步异步阻塞非阻塞详解
  8. mysql全文检索_Mysql的全文检索
  9. “拿来主义”里面的道道
  10. 美国银行公布2019年第三季度财务业绩