14.1.1 Benefits of Using InnoDB Tables
14.1.2 Best Practices for InnoDB Tables
14.1.3 Checking InnoDB Availability
14.1.4 Testing and Benchmarking with InnoDB
14.1.5 Turning Off InnoDB InnoDB 是一个多用途的存储引擎 平衡高可靠性和高性能。 在MySQL 5.6,InnoDB 是默认的存储引擎。 除非你配置一个不同的默认存储引擎, 执行一个CREATE TABLE statement without an ENGINE= clause 创建一个InnoDB 表 InnoDB 包含所有的功能在Mysql 5.1 是InnoDB插件的部分,加上新的指定的到MySQL 5.5或者更高 mysql和INFOMATION_SCHEMA databases 实现Mysql 内部仍旧使用MyISAM表。 特别的,你不能切换grant table 来使用InnoDB InnoDB 的关键优势: InnoDB 包含的关键优势: 1.它的DML 操作遵循ACID 模型, 事务具有提交,回滚, crash-recovery 来保护用户数据 2. 行级锁和Oracle风格一致性读增加了多用户并发和性能 3.InnoDB 表安排他的数据在磁盘优化查询基于主键。 每个InnoDB 有一个主键被称为 clustered index 组织数据最小化I/O用户主键查询 4.为了维护数据完整行,InnoDB 支持FOREIGN KEY约束。 使用外键,inserts, updates, and deletes 会被检查确保 它们不会导致在不同的表不一致性 14.1.1 使用InnoDB 表的好处: 如果你使用MyISAM 表但是由于技术原因没有提交,你会发现InnoDB 表收益有下面原因; 1.如果你的server crashes 因为硬件或者软件问题,无论发生什么在那个时间点, 你不需要做任何事情在重启数据库后。InnoDB crash recovery 自动的完成 任何改变提交的在crash的那个时间点, 不做任何改变 对于那些没有提交的 2.InnoDB 存储引擎维护它自己的buffer pool, cache表和index 数据在主内存作为数据被访问。 频繁的使用数据是被直接从内存处理。 这个缓存适用于很多类型的信息和加速处理。 在专用数据库里,多大80%的物理内存是被分配给InnoDB buffer pool 3.如果你拆分相关的数据到不同的表,你可以设置外键来加强完整性。 4.如果数据变的损坏在磁盘或者在内存,一个checksum 机制提醒你虚假数据在你使用它之前 5.当你设计你的数据库使用适当的主键列用于每个表,操作涉及的那些列是自动被优化的。 是非常快的 引用主键列在WHERE 子句,order by 子句 GROUP BY clauses, and join operations. 6.Inserts, updates, and deletes 是被优化的通过一个自动机制称为 change buffering, InnoDB 不只是允许并发读和写访问相同的表,它cahce 改变的数据组织成磁盘I/O 7.性能优势不限于 巨大的表使用大的查询, 当相同的记录被访问通过从一个表, 一个功能称为自适应Hash Index 接管让那些查询更快,如果它们来到一个hash表 8.你可以压缩表和相关的索引 9.你可以创建和drop 索引 对性能有更少的影响和可用性 10.truncate 一个file-per-table tablespace 是非常快的, 可以释放磁盘空间用于操作系统重用, 相比释放system tablespace的空间 只有InnoDB可以重用 11.存储布局对于表数据是更加有效的对于BLOB和 long text fields, 使用动态行格式 12.你可以通过查询INFORMATION_SCHEMA tables来监控存储引擎内部的工作 13.通过查询Performance Schema tables. 来监控存储引起的性能 14.你可以自由的混合InnoDB表从其他的MySQL 存储引擎, 15.InnoDB 被设计对于CPU效率和最大性能 当处理大量数据时 16.InnoDB 表可以处理大量的数据,即使操作系统 文件限制为2GB 17.

14.1.1 使用InnoDB 表的好处:的更多相关文章

  1. 14.8.4 Moving or Copying InnoDB Tables to Another Machine 移动或者拷贝 InnoDB 表到另外机器

    14.8.4 Moving or Copying InnoDB Tables to Another Machine 移动或者拷贝 InnoDB 表到另外机器 这个章节描述技术关于移动或者复制一些或者所 ...

  2. 14.8.3 Physical Row Structure of InnoDB Tables InnoDB 表的物理行结构

    14.8.3 Physical Row Structure of InnoDB Tables InnoDB 表的物理行结构 一个InnoDB 表的物理行结构取决于在创建表指定的行格式 默认, Inno ...

  3. 14.8.2 Role of the .frm File for InnoDB Tables InnoDB 表得到 .frm文件的作用

    14.8.2 Role of the .frm File for InnoDB Tables InnoDB 表得到 .frm文件的作用 Vsftp:/data01/mysql/zjzc# ls -lt ...

  4. 14.8.1 Creating InnoDB Tables 创建InnoDB 表

    14.8.1 Creating InnoDB Tables 创建InnoDB 表 创建一个InnoDB表,使用CREATE TABLE 语句,你不需要指定ENGINE=InnoDB 子句 如果Inno ...

  5. 14.1.2 InnoDB表最佳实践:

    14.1.2 Best Practices for InnoDB Tables InnoDB表最佳实践: 这个章节描述使用InnoDB表最佳实践: 1.指定一个主键用于每个表使用最多查询的列或者多列, ...

  6. 14.6.7?Limits on InnoDB Tables InnoDB 表的限制

    14.6.7?Limits on InnoDB Tables InnoDB 表的限制 警告: 不要把MySQL system tables 从MyISAM 到InnoDB 表. 这是不支持的操作,如果 ...

  7. 14.6.2 Moving or Copying InnoDB Tables to Another Machine 移动或者copy InnoDB 表到另外的机器

    14.6.2 Moving or Copying InnoDB Tables to Another Machine 移动或者copy InnoDB 表到另外的机器 这个章节描述技术关于移动或者copy ...

  8. 14.6.1 Creating InnoDB Tables 创建InnoDB 表:

    14.6.1 Creating InnoDB Tables 创建InnoDB 表: 创建一个InnoDB 表,使用CREATE TABLE 语句,你不需要指定 ENGINE=InnoDB子句 如果In ...

  9. 14.5.7 Storing InnoDB Undo Logs in Separate Tablespaces 存储InnoDB Undo logs 到单独的表空间

    14.5.7 Storing InnoDB Undo Logs in Separate Tablespaces 存储InnoDB Undo logs 到单独的表空间 在MySQL 5.6.3,你可以存 ...

随机推荐

  1. 我的搜索优化记录(一):中文分词优化IK Analyzer

    搜索绝对不仅仅是搭起框架,跑出结果就完成的工作,之后分词.排序等等的优化才是重头戏. 先交代下背景:这个搜索是我一个人负责搭建并优化的项目,主要索引对象为歌曲.歌手MV等等. 使用技术:Lucene. ...

  2. Fuel4D 2.1 免费跨平台游戏引擎 现已发布

    Fuel4D 2.1 免费跨平台游戏引擎 现已发布 开发环境:纯 C/C++,无JAVA.O-C. 支持 WIN32.安卓 系统. 详情见官方网站:http://www.fuel4d.com 或者进F ...

  3. memcache实现公共计数器网站

    在反问题的过程中遇到的最近项目.网上查了很多资料并没有完全实现. 因此,要找到适合自己的xmemcache client和memcache关联API和说明,我们发现了一个比较完美的实现. 键类:net ...

  4. Android中View和ViewGroup介绍

    1. 概念Android中的View与我们以前理解的“视图”不同.在Android中,View比视图具有更广的含义,它包含了用户交互和显示,更像Windows操作系统中的window. ViewGro ...

  5. EEPlat 的数据层模式

    EEPlat 的数据库底层架构能够同一时候支持多种数据库的集成应用.同一时候能够支持分布式数据库的集成应用.业务对象通过指定数据源与对应的数据库通过数据源层进行数据交互,数据源层通过数据库种类.自己主 ...

  6. 再回首,Java温故知新(七):Java基础之运算符

    常规算数运算符 包括+.-.*./.%分别对应着加.减.乘.除.取余,算数运算符所处理的两个数字必须为同种类型,如果是不同类型且无法进行自动类型转换的话必须进行强制类型转换,不过强制类型转换可能会丢失 ...

  7. How To Cluster Rabbit-MQ--reference

    Foreword This explanation of clustering Rabbit-MQ assumes that you’ve had some experience with Rabbi ...

  8. Understanding Extension Class Loading--官方

    http://docs.spring.io/spring-amqp/docs/1.3.6.RELEASE/reference/html/sample-apps.html#d4e1285 http:// ...

  9. 微信,QQ这类IM app怎么做——谈谈Websocket

    前言 关于我和WebSocket的缘:我从大二在计算机网络课上听老师讲过之后,第一次使用就到了毕业之后的第一份工作.直到最近换了工作,到了一家是含有IM社交聊天功能的app的时候,我觉得我现在可以谈谈 ...

  10. Java NIO中核心组成和IO区别

    1.Java NIO核心组件 Java NIO中有很多类和组件,包括Channel,Buffer 和 Selector 构成了核心的API.其它组件如Pipe和FileLock是与三个核心组件共同使用 ...