码迷,mamicode.com
首页 > 数据库 > 详细

MySQL的存储引擎

时间:2018-01-30 22:58:36      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:http   ram   需要   操作系统   实现   .com   alt   tab   lis   

  针对MySQL,数据最终以什么样的形式保存?以及数据保存在硬盘的什么位置?

  1、MySQL的存储引擎

  MySQL属于数据管理系统,其中包括数据库,负责存储数据;还有数据库访问管理的接口系统,负责管理数据库。

  为了满足不同的业务需求,MySQL的数据库采用多种存储引擎进行数据存储。

 

  2、存储引擎是什么?

  存储引擎指定了表的存储类型,即如何存储和索引数据、是否支持事务等。同时,存储引擎也决定了表在计算机中的存储方式。

  我的MySQL Server version为5.7,支持的存储引擎如下表,默认为InnoDB

技术分享图片

  

  3、InnoDB和MyISAM各自的基本特点和使用场合:

  MyISAM:不需要事务处理,以访问为主的应用适合使用该引擎;

  InnoDB:支持事务控制,比MyISAM占用更多的磁盘空间。适合需要进行频繁更新、删除操作,同时还对事务的完整性要求性比较高,需要实现并发控制的应用。

功能 InnoDB MyISAM
支持事务 支持 不支持
支持全文索引 不支持 支持
外键约束 支持 不支持
表空间大小 较大 较小
数据行锁定 支持 不支持

  

  4、为了实现特殊功能,可以指定某个表的存储引擎,因此表的存储引擎也可以被称为表类型

  create table ‘myisam‘(id INT(4))engine=MyISAM;

 

  5、MySQL的数据文件是怎样的?它是如何存放的?

  不同的存储引擎下,数据文件有所不同。

  a、数据文件的位置

  不同操作系统数据文件的默认存储位置不同,本机:datadir=C:/ProgramData/MySQL/MySQL Server 5.7/Data

 

  b、MyISAM类型的表文件中,数据文件有三种:

    • .frm   表结构定义文件,该文件与存储引擎无关,都有的。
    • .MYI  索引文件,存放MyISAM类型表的索引信息。
    • .MYD  数据文件,存放表中的数据

  

  c、InnoDB类型的表文件

    • .frm
    • ibdata1 数据文件,保存所有InnoDB类型表的数据

  

  

 

MySQL的存储引擎

标签:http   ram   需要   操作系统   实现   .com   alt   tab   lis   

原文地址:https://www.cnblogs.com/bigbigbigo/p/8387091.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!