连接管理器:
   接受请求
   创建线程
   认证用户
   建立安全连接

并发控制:
   mbox:MDA

C/S: 100
       10分钟:
           多版本并发控制: MVCC    用户操作数据时,操作是的数据的快照,切数据快照存在时间值。操作完成后,对快照进行合并。

锁:
   读锁:共享锁
   写锁:独占锁
       LOCK TABLES tb_name {READ|WRITE};
       UNLOCK TABLES

锁粒度:从大到小,MySQL服务器仅支持表级锁,行锁需要由存储引擎完成;
   表锁:
   页锁:
   行锁:

事务:
   RDBMS: ACID (原子性,一致性,隔离性,持久性)

MyISAM:
   InnoDB:

事务日志        事务引擎: 先将事务步骤在内存中执行一遍,写入事务日志。当事务执行完成了,即事务提交,即在内存中执行完成还没有写入内存。然后写入磁盘中。
       重做日志
           redo log
        撤消日志
           undo log
服务器变量:

动态:
   全局变量
       修改后不影响当前会话,只对新建的会话有效;
   会话变量
       仅对当前会话有效,而且是立即生效;

永久有效:修改配置文件

修改:SET {SESSION|GLOBAL} VAR_NAME=‘’;

多事务同时执行:彼此之间互不影响的方式进行并行;
   事务之间交互:
       通过数据集

事务:CPU, I/O
   RDBMS,
       ACID:
           Automicity:原子性,事务所引起的数据库操作,要么都完成,要么都不执行;
           Consistency:一致性,A(3000)-->B(2000)
               1:A:3000-->2500,
               2: A+B: 4500,
           Isolation: 隔离性
               事务调度:事务之间影响最小
               MVCC:多版本并发控制
           Durability:一旦事务成功完成,系统必须保证任何故障都不会引起事务表示出不一致性;
               1、事务提交之前就已经写出数据至持久性存储;
               2、结合事务日志完成;
                   事务日志:顺序IO
                   数据文件:随机IO

事务的状态:
       活动的:active
       部分提交的:最后一条语句执行后
       失败的:
       中止的:
       提交的:

事务:并发执行
   1、提高吞吐量和资源利用率
   2、减少等待时间

事务调度:
   可恢复调度;
   无级联高度:

隔离性:
   隔离级别:
       READ UNCOMMITTED:读未提交
       READ COMMITTED:读提交
       REPATABLE READ:可重读
       SERIABLIZABLE:可串行

并发控制依赖的技术手段:
   锁
   时间戳
   多版本和快照隔离

饿死:
死锁:

SQL,ODBC

START TANSACTION:启动
   SQL
   SQL
COMMIT: 提交
ROLLBACK: 回滚

如果没有明确启动事务:
   autocommit:能实现自动提交,每一个操作都直接提交;

建议:明确使用事务,并且关闭自动提交;

保存点:SAVEPOINT sid
回滚至保存点:ROLLBACK TO sid

转载于:https://blog.51cto.com/pencild/1409605

mysql 事务 锁 并发相关推荐

  1. mysql不可重复读是锁的表吗,Mysql事务,并发问题,锁机制-- 幻读、不可重复读(转)...

    . 例如: 张三的工资为5000,事务A中获取工资为5000,事务B获取工资为5000,汇入100,并提交数据库,工资变为5100, 随后 事务A发生异常,回滚了,恢复张三的工资为5000,这样就导致 ...

  2. 一文读懂MySQL事务锁、事务级别

    锁 性能分:乐观(比如使用version字段比对,无需等待).悲观(需要等待其他事务) 乐观锁,如它的名字那样,总是认为别人不会去修改,只有在提交更新的时候去检查数据的状态.通常是给数据增加一个字段来 ...

  3. Mysql事务,并发问题,锁机制-- 幻读、不可重复读--专题

    1.什么是事务 事务是一条或多条数据库操作语句的组合,具备ACID,4个特点. 原子性:要不全部成功,要不全部撤销 隔离性:事务之间相互独立,互不干扰 一致性:数据库正确地改变状态后,数据库的一致性约 ...

  4. mysql 事务 for update,mysql事务锁_详解mysql 锁表 for update

    摘要 腾兴网为您分享:详解mysql 锁表 for update,智慧农业,真还赚,悦读小说,学习帮等软件知识,以及电池管家,三国群英传3,userland,运满满货主版,王者荣耀,简单3d动画,嘉丽 ...

  5. 【MySQL】深入浅出剖析mysql事务锁机制 - 笔记

    事务的基本概念 事务的特点(ACID) 快照:之前的某一个历史的状态(类比虚拟机的快照),用于实现原子性 隔离性:通过锁机制来实现 锁:共享锁,排它锁,独占锁,临键锁,间隙锁,自增锁,意向锁 持久性: ...

  6. mysql事务锁导致tomcat崩溃_数据库连接池连接耗尽,导致tomcat请求无响应,呈现出假死状态...

    最困难的事情就是认识自己! 个人网站 ,欢迎访问! 前言:最近,测试部门的同事找到我,说他们测试时,没一会就发现服务接口请求一直无响应,Tomcat跟死掉了一样,也没有返回任何的错误响应,说让我赶紧排 ...

  7. jsp mysql事务锁_学生会事务管理系统的设计与实现(JSP,MySQL)(含录像)

    学生会事务管理系统的设计与实现(,MySQL)(含录像)(毕业论文15000字,程序代码,MySQL数据库) 系统功能分析 学生用户功能 1) 这就是本系统的学生用户功能框图(如图3-5所示).学生用 ...

  8. Mysql 事务锁表,解决方法

    2019独角兽企业重金招聘Python工程师标准>>> 1.执行 select * from information_schema.innodb_trx; kill 进程id 转载于 ...

  9. jsp mysql事务锁,JSP操作数据库的事务回滚

    基础介绍 1.先设置为手动提交 conn.setAutoCommit(false); //将自动提交设置为false 2.若成功则提交 conn.commit(); //当操作成功后手动提交 3.若失 ...

最新文章

  1. FPGA之道(38)VHDL与Verilog的比较
  2. 解决Mysql错误Too many connections的方法
  3. 超图数据集管理基本操作和添加删除属性表字段
  4. 成功解决(Win32): 已加载“C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件。
  5. 张高兴的 .NET Core IoT 入门指南:(二)GPIO 的使用
  6. 山东2021高考成绩查询时间二本,山东二本录取结果什么时候出来,2021年高考山东二本录取结果查询时间...
  7. 电热耦合_作者特稿︱电网运行环境下基于电热耦合潮流的架空线路应力预估
  8. 哪些因素造成外贸网站没效果?
  9. 【转载】Windows 10系统默认将画面显示比例调整至125%或150%,最高分辨率已经达到3840×2160(4K)这一级别。...
  10. 2017-9-19Linux基础知识(2)
  11. CDA LEVEL I 数据分析认证考试模拟题库(一)
  12. 千锋云计算毕业设计论文:论文设计任务书
  13. mysql结构化数据通过D2RQ导入Neo4j
  14. 朱啸虎的“合并盈利论”,实为ofo抢道摩拜带节奏
  15. Windows 内网渗透之攻击域控
  16. 互联网公司数据安全保护新探索
  17. 安卓5.1自带浏览器主页设置–转载
  18. 复旦大学计算机学院金玲飞,金玲飞 - 复旦大学 - 计算机科学技术学院
  19. 目前福岛高水平辐射量可能由2号反应堆释放
  20. 计算机视觉算法岗 面试经验 (转载)

热门文章

  1. 安卓动态.9图拉伸实现方案
  2. python是目前计算机语言的主流吗_即便C++现在是增长最快的语言,为什么它不及Java、Python流行?...
  3. 面试java回答优缺点_阿里Java开发面经分享,面试题(附回答)
  4. 4 拼接_解析,地漏与瓷砖的4种拼接方法及安装工艺
  5. Spring学习12之AOP2
  6. 自考第一章计算机基础知识,2018年自考计算机网络技术基础复习资料:第一章...
  7. Vue 面试题 (全)
  8. 数据结构实验之数组三:快速转置
  9. git恢复删除文件之ls-files
  10. mysql dba系统学习(4)mysql的多实例multi启动停止