基于Mysql存储引擎的深入分析
2019/6/30 18:45:47
本文主要是介绍基于Mysql存储引擎的深入分析,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
MySQL有很多种存储引擎,针对不同的应用,可以为每张表选择合适的存储引擎,这样有助于提升MySQL性能。
创建新闻表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引擎和其它引擎。建表时,选择合适的存储引擎很重要,如果到后期再更换将会很麻烦。这里,我们只介绍常用的三种存储引擎:
MyISAM引擎
MyISAM引擎是MySQL默认的存储引擎,MyISAM不支持事务和行级锁,所以MyISAM引擎速度很快,性能优秀。MyISAM可以对整张表加锁,支持并发插入,支持全文索引。
如果你不需要事务支持,通常我们建表时都选用MyISAM存储引擎,像新闻表之类都没有必要支持事务。
InnoDB引擎
InnoDB是专为事务设计的存储引擎,支持事务,支持外键,拥有高并发处理能力。但是,InnoDB在创建索引和加载数据时,比MyISAM慢。
涉及到货币操作一般都需要支持事务,什么都能错,钱不能出错。
Memory引擎
内存表,Memory引擎将数据存储在内存中,表结构不是存储在内存中的,查询时不需要执行I/O操作,所以要比MyISAM和InnoDB快很多倍,但是数据库断电或是重启后,表中的数据将会丢失,表结构不会
丢失。如果你需要将SESSION数据存在数据库中,那么使用Memory引擎是个不错的选择。
通常,我们使用这三种存储引擎就够了,更多的介绍请查阅MySQL手册。
这篇关于基于Mysql存储引擎的深入分析的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-07MySQL读写分离入门:轻松掌握数据库读写分离技术
- 2024-12-07MySQL读写分离入门教程
- 2024-12-07MySQL分库分表入门详解
- 2024-12-07MySQL分库分表入门指南
- 2024-12-07MySQL慢查询入门:快速掌握性能优化技巧
- 2024-12-07MySQL入门:新手必读的简单教程
- 2024-12-07MySQL入门:从零开始学习MySQL数据库
- 2024-12-07MySQL索引入门:新手快速掌握MySQL索引技巧
- 2024-12-06BinLog学习:MySQL数据库BinLog入门教程
- 2024-12-06Binlog学习:MySQL数据库的日志管理入门教程