• mysql--存储引擎


    存储引擎:也叫表类型,指的是数据表的存储机制,索引方案等配套相关功能。不同的引擎,由于处理方式不同,会带来不同的功能或者相应优化,根据实际需求选择合理的引擎。

    选择表的存储引擎的标准:
    是否需要事务支持。
    是否支持外键。
    并发量的要求。
    错误恢复的处理。
    是否支持某些具体功能。


    最常用的存储引擎:
    MyISAM, Indexed Sequential Access Method (有索引的顺序访问方法)
    InnoDB
    区别:
    数据和索引的保存的文件不同:MyISAM是分开保存,而innodb是保存到表空间

    MyISAM支持索引压缩,而Innodb索引和数据是绑定保存不压缩,体积大。

    Innodb很多时候是行级锁,而myisam是表级锁,innodb的并发高。

    InnoDB不支持FULLTEXT类型的索引(新版本的InnoDB也支持)。

    Innodb支持事务,外键,数据完整性约束要强。而MYISAM不支持。

    InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可。注意的是,当count(*)语句包含 where条件时,两种表的操作是一样的。

    对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中,可以和其他字段一起建立联合索引。


    mysql的存储引擎默认是INNODB
    在mysql的my.ini(路径:...MySQLmy.ini)配置文件中可以找到,如下图:

     

    在创建表或者编辑表时可以指定表的存储引擎
    利用表属性:engine 引擎类型
    alter table tb_name engine 引擎类型

     

     

     

    创建表时指定存储引擎:
     


    innoDB与myisam区别:

    保存的文件方式不同
    myisam 一个表,三个文件
    tb_name.frm 表结构文件
    tb_name.MYD 数据文件(存储引擎)
    tb_name.MYI 索引

    INNODB 一个表一个文件
    tb_name.frm

    所有innoDB表,都使用相同的innoDB存储空间在保存数据和索引(...MySQLdataibdata1)
     

    随着数据库的增大,在data目录下innodb的ibdata1文件可能会不只一个,但不会区分表

    另:在安装mysql文件的时候,配置mysql过程中也会有一步提示表空间文件的安装路径

     

  • 相关阅读:
    使用Power Query从Web页面获取图像到Power BI报告中
    视频 |【2019】Power BI 8月产品功能更新讲解
    【2019】微软Power BI 每月功能更新系列——Power BI 8月版本功能完整解读
    视频 |【2019】Power BI 7月产品功能更新讲解
    2019 年 BI 平台 Top 14
    2016 黑客必备的Android应用都有哪些?
    J2EE完全手册(二)
    JavaBean ,Enterprise Bean(EJB), 三种Bean, 以及POJO
    J2EE完全手册(一)
    J2EE简介
  • 原文地址:https://www.cnblogs.com/zunpeng/p/3880173.html
Copyright © 2020-2023  润新知