hooyantsing's Blog

10_MySAM和InnoDB区别

字数统计: 279阅读时长: 1 min
2020/09/05

10 MySAM和InnoDB区别

狂神说Java MySQL最新教程通俗易懂

查看

查看创建数据库语句

1
SHOW CREATE DATABASE shool

查看数据表的定义语句

1
SHOW CREATE TABLE shudent

显示表的结构(设计表)

1
DESC student

数据库引擎

  • INNODB:MySQL默认使用。
  • MYISAM:MySQL早年使用。

    差别

|事务支持 |不支持|支持 |
|数据行锁定|不支持|支持 |
|外键约束 |不支持|支持 |
|全文索引 |支持 |不支持 |
|表空间大小|较小 |较大,约为2倍|

使用场景:

  • INNODB:安全性高,事务处理,多表多用户。
  • MYISAM:节约空间,速度较快。
    所有的数据库文件都存在data目录下,一个文件夹对应一个数据库

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

  • INNODB * \*.frm 文件

  • MYISAM * \*.frm 表结构定义文件

    • \*MYD 数据文件(data)
    • \*.MYI 索引文件(index)

      数据库字符集编码

在创建表末尾设置编码
1
CHARSET=utf8

若不设置,将使用默认字符集编码

MySQL的默认编码是:Latin1,不支持中文。

在 my.ini 中设置默认编码
1
character-set-server=utf8
CATALOG
  1. 1. 10 MySAM和InnoDB区别
    1. 1.0.1. 查看
    2. 1.0.2. 显示表的结构(设计表)
  2. 1.1. 数据库引擎
    1. 1.1.1. 差别
    2. 1.1.2. 数据库字符集编码
      1. 1.1.2.1. 在创建表末尾设置编码
      2. 1.1.2.2. 在 my.ini 中设置默认编码