mysql数据库优化--存储引擎的选择

一、Mysql 存储引擎包括 MyISAM、InnoDB 、BDB、MEMORY 、csv 等等, 其中InnoDB和BDB 提供事务安全表, 其它存储引擎都是非事务安全表。

最常用的两种存储引擎

1、Myisam 是Mysql 的默认存储引擎,当创建新表时,未指定存储引擎则默认是Myisam.

每个MyISAM在磁盘上存储成三个文件。文件名和表名相同,扩展名分别为.frm(存储表定义), .MYD(MYData, 存储数据)、 .MYI(MYIndex, 存储索引)。数据文件和索引文件可以放在不同的位置,平均分布io 获得更快的速度。

2、InnoDB 存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比 Myisam的存储引擎,InnoDB 写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。


二、选择合适的存储引擎

选择标准: 根据应用特点选择合适的存储引擎,对于复杂的应用系统可以根据实际情况选择多种存储引擎进行组合. 下面是常用存储引擎的适用环境:

1. MyISAM:默认的 MySQL 插件式存储引擎,它是在 Web、数据仓储和其他应用环境下最常使用的存储引擎之一

2. InnoDB:用于事务处理应用程序,具有众多特性,包括 ACID 事务支持。B 树索引 支持哈希索引 支持 支持全文索引 支持集群索引 支持数据缓存 支持 支持索引缓存 支持 支持 支持数据可压缩 支持 支持空间使用 低 低 N/A 高 非常低内存使用 低 低 中等 高 低批量插入的速度 高 高 高 低 非常高支持外键 

3. Memory:将所有数据保存在 RAM 中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。

4. Merge:允许 MySQL DBA 或开发人员将一系列等同的 MyISAM 表以逻辑方式组合在一起,并作为 1 个对象引用它们。对于诸如数据仓储等 VLDB 环境十分适合。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值