mysql存储引擎有哪些,mysql存储引擎特点分析

发布时间:2020-11-07编辑:脚本学堂
有关mysql存储引擎的重点内容,常用的mysql存储引擎为myisam引擎,myisam merge引擎,innodb引擎,memory引擎等,这里介绍下各自的特点,有研究mysql存储引擎的朋友参考下。

mysqlcunchuyinqing/ target=_blank class=infotextkey>mysql存储引擎特点深入解析
 
mysql有很多种存储引擎,针对不同的应用,可以为每张表选择合适的存储引擎,这样有助于提升mysql性能。

1、创建新闻表news:
 

create  table `sandbox`.`news`

    `id` int not null auto_increment , 
    `name` varchar(45) null ,     
    `content` varchar(45) null , 
    `created` varchar(45) null , 
    primary key (`id`)
) engine = myisam;

注意,mysql大小写敏不敏感,是由你所使用的平台决定的,在windows下,mysql大小写不敏感;在linux平台下,mysql大小写敏感

最后一句sql语句engine=“存储引擎名”,就是为表选择存储引擎,mysql允许我们在创建表的时候选择不同的存储引擎,那么mysql到底都有哪些存储引擎呢?
mysql存储引擎包括:myisam引擎,myisam merge引擎,innodb引擎,memory引擎,archive引擎,csv引擎,federated引擎,blackhle引擎,ndb cluster引擎,falcon引擎,soliddb引擎,pbxt引擎,maria引擎和其它引擎。

建表时,选择合适的存储引擎很重要,如果到后期再更换将会很麻烦。这里,我们只介绍常用的三种存储引擎:
1、myisam引擎
myisam引擎是mysql默认的存储引擎,myisam不支持事务和行级锁,所以myisam引擎速度很快,性能优秀。myisam可以对整张表加锁,支持并发插入,支持全文索引。
如果你不需要事务支持,通常我们建表时都选用myisam存储引擎,像新闻表之类都没有必要支持事务。

2、innodb引擎
innodb是专为事务设计的存储引擎,支持事务,支持外键,拥有高并发处理能力。但是,innodb在创建索引和加载数据时,比myisam慢。
涉及到货币操作一般都需要支持事务,什么都能错,钱不能出错。

3、memory引擎
内存表,memory引擎将数据存储在内存中,表结构不是存储在内存中的,查询时不需要执行i/o操作,所以要比myisam和innodb快很多倍,但是数据库断电或是重启后,表中的数据将会丢失,表结构不会丢失。如果需要将session数据存在数据库中,那么使用memory引擎是个不错的选择。