如何选择mysql的存储引擎
Posted typical-me
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何选择mysql的存储引擎相关的知识,希望对你有一定的参考价值。
如何选择mysql的存储引擎
在开发中,我们经常使用的存储引擎 myisam / innodb/ memory
myisam 存储: 如果表对事务要求不高,同时是以查询和添加为主的,我们考虑使用myisam存储引擎. ,比如 bbs 中的 发帖表,回复表.
INNODB 存储: 对事务要求高,保存的数据都是重要数据,我们建议使用INNODB,比如订单表,账号表.
Memory 存储,比如我们数据变化频繁,不需要入库,同时又频繁的查询和修改,我们考虑使用memory, 速度极快.
问 MyISAM 和 INNODB的区别
1. 事务安全
2. 查询和添加速度
3. 支持全文索引
4. 锁机制
5. 外键 MyISAM 不支持外键, INNODB支持外键. (在php开发中,通常不设置外键,通常是在程序中保证数据的一致)
具体的各种存储引擎的区别如下:
如果你的数据库的存储引擎是myisam,请一定记住要定时进行碎片整理
举例说明:
create table test100(id int unsigned ,name varchar(32))engine=myisam;
insert into test100 values(1,’aaaaa’);
insert into test100 values(2,’bbbb’);
insert into test100 values(3,’ccccc’);
我们应该定义对myisam进行整理
optimize table test100;
mysql_query(“optimize tables $表名”);
以上是关于如何选择mysql的存储引擎的主要内容,如果未能解决你的问题,请参考以下文章