1. 14.2 InnoDB Concepts and Architecture InnoDB 概念和结构体系:
  2.  
  3. 14.2.1 MySQL and the ACID Model
  4. 14.2.2 InnoDB Multi-Versioning
  5. 14.2.3 InnoDB Redo Log
  6. 14.2.4 InnoDB Undo Logs
  7. 14.2.5 InnoDB Table and Index Structures
  8. 14.2.6 InnoDB Mutex and Read/Write Lock Implementation
  9.  
  10. 本节中的信息提供了背景帮助你得到最多的歌功能和性能 在使用InnoDB表, 它的目的是:
  11.  
  12. 1. 任何从其他数据库转到MySQL的, 解释那些事情可能看起来类似的 哪些是全新的:
  13.  
  14. 2. 任何从MyISAM 表到InnoDB InnoDB 是默认的存储引擎
  15.  
  16. 3. 任何考虑它们的应用结构或者软件栈, 了解设计思路,性能特点,在细节上InnoDB表的可扩展性
  17.  
  18. 在这个章节:
  19.  
  20. 1.InnoDB 如何支持ACID 原则
  21.  
  22. 2.多版本控制(MVCC) 让事务 从查看或者修改相互的数据在适当的时间
  23.  
  24. 3.InnoDB的物理结构 ,比如表,indexes,tablespaces,undo logs,和redo log.
  25.  
  26. 14.2.1 MySQL and the ACID Model MySQLACID 模型
  27.  
  28. ACID 模型是一组数据库设计原则,强调可靠性的方面对于关系型数据和关键任务应用的重要性
  29.  
  30. MySQL 包含的组件比如InnoDB 存储引擎紧紧追随ACID 事务模型,
  31.  
  32. 使数据不会冲突,结果是不会曲解 在特别的条件 比如软件crash和硬件的故障。
  33.  
  34. 当你依赖于 ACID一致性功能,你不需要重新发明轮子来实现一致性检查和crash recovery 机制。
  35.  
  36. 如果你有额外的软件保障,超可靠的硬件,或者一个应用可以容忍很小的数据丢失或者恶补一致性,
  37.  
  38. 你可以调整MySQL设置来交换一些 ACID 可靠性来得到更好的性能。
  39.  
  40. 下面的章节描述MySQL的特点, 特别是InnoDB 存储引擎,与ACID 模型的互动:
  41.  
  42. A: 自动的
  43.  
  44. C: 一致性
  45.  
  46. I: 隔离
  47.  
  48. D: 持久性
  49.  
  50. Atomicity
  51.  
  52. ACID 模型的atomicity 方面主要涉及InnoDB事务, 依赖的MySQL 功能包括:
  53.  
  54. 1.自动提交设置
  55.  
  56. 2.COMMIT 语句
  57.  
  58. 3.ROLLBACK 语句
  59.  
  60. 4.操作INFORMATION_SCHEMA 表的数据
  61.  
  62. 一致性:
  63.  
  64. ACID 事务的一致性方面主要涉及内部的InnoDB处理来保护数据在crash时,相关的功能包括:
  65.  
  66. InnoDB doublewrite buffer.
  67.  
  68. InnoDB crash recovery.
  69.  
  70. 隔离:
  71.  
  72. ACID 模型的隔离方面主要涉及InnnoDB 事务, 特别的 隔离级别应用于每个事务。 相关的MySQL 功能包括:
  73.  
  74. 1.自动提交设置:
  75.  
  76. 2.设置隔离级别语句:
  77.  
  78. 3. InnoDB 锁定 行锁细节, 在性能调优,你可以查看INFORMATION_SCHEMA tables的细节。
  79.  
  80. 持久性:
  81.  
  82. ACID 模型的持久性方面涉及MySQL 软件功能与特定的硬件配置有关。
  83.  
  84. 因为 许多可能的依靠你的CPU,网络和存储设备的能力,
  85.  
  86. 这方面是最复杂的来提供具体的指导方针
  87.  
  88. InnoDB doublewrite buffer, 打开和关闭 innodb_doublewrite 配置选项;
  89.  
  90. 1.配置选项 innodb_flush_log_at_trx_commit.
  91.  
  92. 2.配置选项 sync_binlog.
  93.  
  94. 3.配置选项 innodb_file_per_table.
  95.  
  96. 4.buffer 在一个存储设备,比如disk drive,SSD,或者RAID 阵列
  97.  
  98. 5.电池高速缓存
  99.  
  100. 6.操作系统用于运行MySQL,特别对于fsync()系统调用的支持

14.2.1 MySQL and the ACID Model的更多相关文章

  1. 14.2 InnoDB and the ACID Model

    14.2 InnoDB and the ACID Model ACID 模型是一组数据库设计原则,强调可靠性方面对于商业数据和关键人物. MySQL 包含组件比如InnoDB存储引擎坚持ACID 模型 ...

  2. 跟着百度学PHP[14]-PDO之Mysql的事务处理2

    前面所将仅仅是在纯mysql下的讲解,这节就是要将其搬到PDO台面上来了. 将自动提交关闭. SetAttribute下有一个PDO::ATTR_AUTOCOMMIT 将其设置为0即可关闭,如:$pd ...

  3. 【原创】Mysql中事务ACID实现原理

    引言 照例,我们先来一个场景~ 面试官:"知道事务的四大特性么?" 你:"懂,ACID嘛,原子性(Atomicity).一致性(Consistency).隔离性(Isol ...

  4. Mysql中事务ACID实现原理

    引言 照例,我们先来一个场景~ 面试官:"知道事务的四大特性么?"你:"懂,ACID嘛,原子性(Atomicity).一致性(Consistency).隔离性(Isola ...

  5. 【转】Mysql中事务ACID实现原理

    转自:https://www.cnblogs.com/rjzheng/p/10841031.html 作者:孤独烟 引言 照例,我们先来一个场景~ 面试官:"知道事务的四大特性么?" ...

  6. ubuntu 14.04 安装mysql server初级教程

    序,mysql数据库是开源的,被大多数企业所使用 目录 一.apt-get install 软件安装原理剖析二.安装mysql server三.配置和管理msyql 一.apt-get install ...

  7. 深入学习MySQL事务:ACID特性的实现原理

    事务是MySQL等关系型数据库区别于NoSQL的重要方面,是保证数据一致性的重要手段.本文将首先介绍MySQL事务相关的基础概念,然后介绍事务的ACID特性,并分析其实现原理. MySQL博大精深,文 ...

  8. 搞懂MySQL InnoDB事务ACID实现原理

    前言 说到数据库事务,想到的就是要么都做修改,要么都不做.或者是ACID的概念.其实事务的本质就是锁和并发和重做日志的结合体.那么,这一篇主要讲一下InnoDB中的事务到底是如何实现ACID的. 原子 ...

  9. MySQL事务及ACID特性

    一.事物 1.定义:事务是访问和更新数据库的程序执行单元,事务中包含一条或者多条SQL语句,这些语句要么全部执行成功,要么都不执行. 在MySQL中,事务支持是在引擎层实现的,MySQL是一个支持多引 ...

随机推荐

  1. ASP.NET MVC 5 学习教程:修改视图和布局页

    原文 ASP.NET MVC 5 学习教程:修改视图和布局页 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 ...

  2. oschina 开发工具

    开发工具 29反编译工具 26持续集成系统 19SQL注入工具 139Git开源工具 138Java开发工具 43.NET开发工具 85PHP开发工具 96C/C++开发工具 70Ruby/Rails ...

  3. HDU 4739 求正方形个数

    九野的博客,转载请注明出处:http://blog.csdn.net/acmmmm/article/details/11711707 求所有可能围成的正方形,借个代码 #include <que ...

  4. android的animator

    3.0 以前,android支持两种动画模式,tween animation,frame animation,在android3.0中又引入了一个新的动画系统:property animation,这 ...

  5. GridView控件-01-[简单的数据显示]

    GridView绑定数据分为两种,一种是多值绑定,另一种是字段绑定. 多值绑定(直接绑定到数据源就行,不需要使用字段): 前台代码: <asp:GridView ID="GridVie ...

  6. BZOJ 1196: [HNOI2006]公路修建问题( MST )

    水题... 容易发现花费最大最小即是求 MST 将每条边拆成一级 , 二级两条 , 然后跑 MST . 跑 MST 时 , 要先加 k 条一级road , 保证满足题意 , 然后再跑普通的 MST . ...

  7. 1688: [Usaco2005 Open]Disease Manangement 疾病管理( 枚举 )

    我一开始写了个状压dp..然后没有滚动就MLE了... 其实这道题直接暴力就行了... 2^15枚举每个状态, 然后检查每头牛是否能被选中, 这样是O( 2^15*1000 ), 也是和dp一样的时间 ...

  8. java--继承的一些笔记

    public class Person { public void display(){ System.out.println("Play Person..."); } stati ...

  9. IntelliJ IDEA导出Java 可执行Jar包

    原文:IntelliJ IDEA导出Java 可执行Jar包 保证自己的Java代码是没有问题的,在IDEA里面是可以正常运行的,然后,按下面步骤: 打开File -> Project Stru ...

  10. Python 文本解析器

    Python 文本解析器 一.课程介绍 本课程讲解一个使用 Python 来解析纯文本生成一个 HTML 页面的小程序. 二.相关技术 Python:一种面向对象.解释型计算机程序设计语言,用它可以做 ...