`
天梯梦
  • 浏览: 13631980 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

MySQL入门 (七) : 储存引擎与资料型态

 
阅读更多

1 表格与储存引擎

表格(table)是资料库中用来储存纪录的基本单位,在建立一个新的资料库以后,你必须为这个资料库建立一些储存资料的表格:

mysql_08_snap_01

每一个资料库都会使用一个资料夹,这些资料库资料夹用来储存所有资料库各自需要的档案:

mysql_08_snap_02

「Storage engine、储存引擎」是MySQL用来储存资料的技术,为了资料库多样化的应用,你可以在建立表格的时候,依照自己的需求指定一种储存引擎,不同的储存引擎会有不同的资料储存方式与运作的特色。 MySQL提供许多储存引擎让你选择,下列是主要的三种储存引擎的简介:

  • MyISAM:MySQL预设的储存引擎,虽然它支援的功能并没有像一般的资料库那么多(例如交易、transaction);不过也因为它比较简单,所以运作的效率相对也比较好
  • InnoDB:这种储存引擎所提供的功能已经跟大型的商用资料库软体一样了,像是交易(transaction)、纪录锁定(row-level locking)与自动回复(auto-recovery)。
  • MEMORY:这是一个比较特殊的储存引擎,它把资料储存在纪忆体中,所以运作的效率是最快的;不过只要MySQL伺服器关闭后,储存的资料就全部不见了。

 

 

1.1 MyISAM

「MyISAM」是MySQL预设的储存引擎,「预设」的意思是如果你在建立表格的时候没有指定一种储存引擎,MySQL会帮你建立的新表格指定为「MyISAM」储存引擎。 以下列一个使用MyISAM储存引擎的资料库来说,在资料库资料夹中的档案会像这样:

mysql_08_snap_03

当你建立一个表格以后,「MyISAM」储存引擎会建立以表格名称为档案名称的三个档案,以「city」表格来说:

mysql_08_snap_04

使用「MyISAM」储存引擎的资料库具有「可携性、portable」的特色,你可以很容易的把一个资料库复制到另外一台电脑的MySQL伺服器中:

mysql_08_snap_05

注:使用「MyISAM」储存引擎时,MySQL并不会限制一个资料库中可以包含的表格数量。 不过一个表格会在档案系统中建立三个档案,如果超过作业系统对于档案数量或容量的限制,你就不能再建立任何新的表格。

 

 

1.2 InnoDB

MySQL资料库伺服器从3.23.49版本开始把「InnoDB」储存引擎列为正式支援的功能,所以从这个版本开始,MySQL也提供与大型商用资料库软体一样的功能。 最主要的功能是支援「交易、transaction」,在比较复杂的资料库应用系统中,很常遇到这样的情况:

mysql_08_snap_06

在顺利的情况下,当然不会有任何问题。 可是如果发生下列的情况:

mysql_08_snap_07

这样的情况是一定要避免,否则资料库中储存的资料就会出现很大的问题了。 所以一般的大型商用资料库都会使用交易的功能来处理这样的情况:

mysql_08_snap_08

「InnoDB」储存引擎除了提供许多功能外,与「MyISAM」储存引擎最大的差异是档案的储存方式:

mysql_08_snap_09

「InnoDB」储存引擎实际储存在档案系统中的档案会像这样:

mysql_08_snap_10

注:因为使用「InnoDB」储存引擎的表格会使用同一个储存空间,所以不同资料库的表格资料也会储存在一起。 「InnoDB」储存引擎限制在这个共用的储存空间中不能超过两百万个表格。

 

 

点击阅读全文

更多参考:

MySQL 超新手入门教程系列

MySQL入门 (一) : 资料库概论与MySQL的安装

MySQL入门 (二) : SELECT 基础查询

MySQL入门 (三) : 运算式与函式

MySQL入门 (四) : JOIN 与UNION 查询

MySQL入门 (五) : CRUD 与资料维护

MySQL入门 (六) : 字元集与资料库

MySQL入门 (八) : 表格与索引

 

本文转自: MySQL入门 (七) : 储存引擎与资料型态

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    MySQL课程之MySQL存储引擎入门

    MySQL课程之MySQL存储引擎入门 MySQL 支持多种存储引擎,目前的存储引擎有 MyISAM 、 InnoDB 、 BDB 、 Memory 、 Merge 、 Archive 、 Federated 、 BLACKHOLE 、 Cluster/NDB 、 CSV 、 Example 等。其中, InnoDB...

    完整版 MySQL8.0从入门到精通 MySQL数据库教程 全套PPT课件资源集合 共26个章节 含全部源代码.rar

    完整版 MySQL8.0从入门到精通 MySQL数据库教程 第21章 精通MySQL存储引擎(共31页).ppt 完整版 MySQL8.0从入门到精通 MySQL数据库教程 第22章 PHP操作MySQL数据库(共16页).ppt 完整版 MySQL8.0从入门到精通 MySQL...

    完整版 MySQL8.0从入门到精通 MySQL数据库教程 第11章 视图(共20页).ppt

    完整版 MySQL8.0从入门到精通 MySQL数据库教程 第21章 精通MySQL存储引擎(共31页).ppt 完整版 MySQL8.0从入门到精通 MySQL数据库教程 第22章 PHP操作MySQL数据库(共16页).ppt 完整版 MySQL8.0从入门到精通 MySQL...

    完整版 MySQL8.0从入门到精通 MySQL数据库教程 第23章 PDO数据库抽象类库(共12页).ppt

    完整版 MySQL8.0从入门到精通 MySQL数据库教程 第21章 精通MySQL存储引擎(共31页).ppt 完整版 MySQL8.0从入门到精通 MySQL数据库教程 第22章 PHP操作MySQL数据库(共16页).ppt 完整版 MySQL8.0从入门到精通 MySQL...

    MySQL从入门到高级,进阶详解

    包含:《MYSQL入门经典习课后题答案.doc》《MySQL从入门到高级面试详解大全.》 、数据库基础知识 -MySQL的基本架构是怎么样的? 如何查看空闲连接列表? -MySQL连接超出默认连接的8小时,除了重连还有其他办法吗? 如何...

    动力节点MySQL数据库入门视频教程-098-mysql支持哪些存储引擎

    动力节点的杜老师讲述的mysql教程,详细讲解了MySQL的相关知识,包括MySQL概述,MySQL应用环境,MySQL系统特性,MySQL初学基础,MySQL管理工具,如何安装MySQL及MySQL新特性,通过观看可掌握MySQL全套知识。

    动力节点MySQL数据库入门视频教程-099-mysql常用存储引擎

    动力节点的杜老师讲述的mysql教程,详细讲解了MySQL的相关知识,包括MySQL概述,MySQL应用环境,MySQL系统特性,MySQL初学基础,MySQL管理工具,如何安装MySQL及MySQL新特性,通过观看可掌握MySQL全套知识。

    Mysql数据库从入门到精通.rar

    1.mysql 备份数据 2.Mysql 更新数据 ...10.浅谈MySQL存储引擎选择InnoDB还是MyISAM 11.浅谈unique列上插入重复值的MySQL解决方案 12.深入了解MySQL 5.5分区功能增强.doc 13.在MySQL中操作日期和时间

    MySQL书籍(21本)目录知识点(思维导图加图).rar

    2013年《MySQL技术内幕- InnoDB存储引擎(第2版)》 2013年《MySQL入门经典》 2013年《高性能MySQL(第3版)》 2014年《深入浅出MySQL-数据库开发、优化与管理维护》 2014年《涂抹MySQL》 2015年《MySQL教程》 2015年...

    MYSQL数据库入门实战课程-重点笔记

    如何学习数据库(新⼿必看)? mysql 操作表 常⽤关系型数据库产品介绍 MySQL适⽤于哪些场景?...MySQL数据类型和存储引擎数据库设计 SQL是什么?它能做什么? 电商平台(B2B2C)项⽬实战数据库设计 mysql 常⽤sql 语句

    动力节点MySQL数据库入门视频教程-097-存储引擎

    动力节点的杜老师讲述的mysql教程,详细讲解了MySQL的相关知识,包括MySQL概述,MySQL应用环境,MySQL系统特性,MySQL初学基础,MySQL管理工具,如何安装MySQL及MySQL新特性,通过观看可掌握MySQL全套知识。

    带你走进MySQL数据库(MySQL入门详细总结三)

    带你走进MySQL数据库(MySQL入门详细总结二) 带你走进MySQL数据库(MySQL入门详细总结一) 文章目录1.存储引擎2.事务(Transaction)3.索引4.视图(view)5.DBA命令6.数据库设计三范式 1.存储引擎 不同的引擎,表具有...

    动力节点MySQL数据库入门视频教程-100-InnoDB存储引擎

    动力节点的杜老师讲述的mysql教程,详细讲解了MySQL的相关知识,包括MySQL概述,MySQL应用环境,MySQL系统特性,MySQL初学基础,MySQL管理工具,如何安装MySQL及MySQL新特性,通过观看可掌握MySQL全套知识。

    MySql数据库操作:创建数据库、删除数据库和数据库存储引擎

    声明:本文内容参考书籍《MySql入门很简单》 目录 1 创建数据库 2 删除数据库 3 数据库存储引擎 3.1 InnoDB 3.2 MyISAM 3.3 MEMORY 3.4 存储引擎的选择 首先数据库是指长期存储在计算机内、有组织的和可共享的数据...

    动力节点MySQL数据库入门视频教程-101-MEMORY存储引擎

    动力节点的杜老师讲述的mysql教程,详细讲解了MySQL的相关知识,包括MySQL概述,MySQL应用环境,MySQL系统特性,MySQL初学基础,MySQL管理工具,如何安装MySQL及MySQL新特性,通过观看可掌握MySQL全套知识。

    新版 MySQL DBA 高级视频 基于MySQL 5.7 MySQL 8.0版本.rar

    │ 第二课MySQL入门介绍.pdf │ 第五课MySQL常用函数介绍.pdf │ 第八课InnoDB内核.pdf │ 第六课SQL高级应用.pdf │ 第十一课MySQL表分区8.0.pdf │ 第十七课Elasticsearch分享-张亚V4.pdf │ 第十三课MySQL5.7高...

    MySQL8从入门到精通视频.zip

    第21讲 精通MySQL存储引擎 第22讲 PHP操作mysql数据库 第23讲 PDO数据库抽象类库 第24讲 开发网上商城 第25讲 论坛管理系统数据库设计 第26讲 新闻发布系统数据库设计 课本幻灯片 课本源代码 MySQL常用命令大全

    MySQL5学习笔记

    MySQL数据引擎 7 MySQL应用 9 存储过程 9 MySQL存储过程之java调用 9 MySQL存储过程实现动态查询 12 MySQL应用总结 12 MySQL数据管理 15 数据管理 15 MySQL数据导出 15 MySQL数据还原 15 MySQL灾难性复制恢复总结 16...

Global site tag (gtag.js) - Google Analytics