基于Mysql存储引擎的深入分析

所属分类: 数据库 / Mysql 阅读数: 780
收藏 0 赞 0 分享

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手册。

更多精彩内容其他人还在看

Mac 将mysql路径加入环境变量的方法

这篇文章主要介绍了Mac如何将mysql路径加入环境变量,有需要的朋友好按照下面的步骤操作即可
收藏 0 赞 0 分享

mysql 增加修改字段类型及删除字段类型

本节主要介绍了mysql如何增加修改字段类型及删除字段类型,需要的朋友可以参考下
收藏 0 赞 0 分享

Mysql主从复制(master-slave)实际操作案例

这篇文章主要介绍了Mysql主从复制(master-slave)实际操作案例,同时介绍了Mysql grant 用户授权的相关内容,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL异常处理浅析

这篇文章主要介绍了MySQL的异常处理,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL存储毫秒数据的方法

MySQL中没有可以直接存储毫秒数据的数据类型,但是不过MySQL却能识别时间中的毫秒部分。这篇文章主要介绍了MySQL存储毫秒数据的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

MySql中使用INSERT INTO语句更新多条数据的例子

这篇文章主要介绍了MySql中使用INSERT INTO语句更新多条数据的例子,MySQL的特有语法,需要的朋友可以参考下
收藏 0 赞 0 分享

Windows下MySql错误代码1045的解决方法

这篇文章主要介绍了Windows下MySql错误代码1045的解决方法,文中还包含了2个Linux下的解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql查询今天、昨天、近7天、近30天、本月、上一月的SQL语句

这篇文章主要介绍了mysql查询今天、昨天、近7天、近30天、本月、上一月的SQL语句,一般在一些统计报表中比较常用这个时间段,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql的中文数据按拼音排序的2个方法

这篇文章主要介绍了mysql的中文数据按拼音排序的2个方法,用于一些特殊环境,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL定期分析检查与优化表的方法小结

听DBA的人说,相比oracle,MySQL就是一个玩具级别的数据库,在网易门户中,DBA基本很少去管理到MySQL的东西,所以我们产品使用到的MySQL的一些配置和优化还是需要我们开发人员自己动手,下面就简单介绍一下实用的定期优化方法
收藏 0 赞 0 分享
查看更多