InnoDB和MYISAM是mysql的两种引擎
早期版本默认使用的是MYISAM,现在默认使用InnoDB。
MYISAM | INNODB | |
---|---|---|
事务支持 | 不支持 | 支持 |
数据行锁定 | 不支持 | 支持 |
外键约束 | 不支持 | 支持 |
全文索引 | 支持 | 不支持 |
表空间大小 | 较小 | 较大,约为2倍 |
常规使用操作:
- MYISAM 节约空间,速度较快
- INNODB 安全性高,事务处理,多表多用户操作
在物理空间中的位置
所有的数据库文件都存在data目录下
本质还是文件存储
MYSQL引擎在物理文件上的区别:
- InnoDB在数据库表中只有一个*.frm文件,以及上级 目录下的ibdata1文件
- MYISAM对应文件
- *.frm - 表结构的定义文件
- *.MYD 数据文件(data)
- *.MYI 索引文件(index)
设置数据库的字符集编码
CHARSET=utf8
不设置的话,会是mysql默认的字符集编码,不支持中文。
在my.ini中配置默认的编码
character-set-server=utf8