MySQl 学习笔记 010(MyISAM和InnoDB的区别)

内容来自B站【狂神说Java】MySQL最新教程通俗易懂

一、上集补充

  • 查看创建数据库的语句
    SHOW CREATE DATABASE `school`;
    
  • 查看创建表的语句
    SHOW CREATE TABLE `student`;
    
  • 查看表的结构
    DESC `student`;
    

二、数据表的类型(引擎)

维度 MyISAM InnoDB
事务支持 不支持 支持
数据行锁定 不支持 支持
外键 不支持 支持
全文索引 支持 不支持
表空间的大小 较小 较大,约为前者的两倍

常规操作:

  • MyISAM:节约空间,速度较快
  • InnoDB:安全性高,支持事务的处理,多表多用户操作

在物理空间存放的位置

所有的数据库文件都存放在data的目录下,一个文件夹就对应一个数据库,本质还是文件的存储。

MySQl引擎在物理文件上的区别:

  • InnoDB 在数据库表中只有一个 *.frm 文件,以及上级目录下的 ibdata1 文件
  • MyISAM 对应的文件
    • *.frm 表结构的定义文件
    • *.MYD 数据文件(data)
    • *.MYI 索引文件(index)

三、数据库表的字符集

charset=utf8
  • 不设置的话,会是mysql默认的字符集编码Latin1(不支持中文)
  • 可以在my.ini中配置的编码 character-set-server=utf8
posted @ 2022-02-06 16:29  君子键  阅读(19)  评论(0)    收藏  举报