MySQL学习(一)数据库引擎

特性

MyISAM

InnoDB

MEMORY

存储限制

支持

事务安全

不支持

支持

不支持

锁机制

表锁

行锁

表锁

B树索引

支持

支持

支持

哈希索引

不支持

不支持

支持

全文索引

支持

不支持

不支持

集群索引

不支持

支持

不支持

数据缓存

 

支持

支持

索引缓存

支持

支持

支持

数据可压缩

支持

不支持

不支持

空间使用

N/A

内存使用

中等

批量插入速度

支持外键

不支持

支持

不支持

1) MyISAM

在 MySQL 5.1 版本及之前的版本,MyISAM 是默认的存储引擎。

 

MyISAM 存储引擎不支持事务和外键,所以访问速度比较快。如果应用主要以读取和写入为主,只有少量的更新和删除操作,并且对事务的完整性、并发性要求不是很高,那么选择 MyISAM 存储引擎是非常适合的。

 

MyISAM 是在 Web 数据仓储和其他应用环境下最常使用的存储引擎之一。

2) InnoDB

MySQL 5.5 版本之后默认的事务型引擎修改为 InnoDB。

 

InnoDB 存储引擎在事务上具有优势,即支持具有提交、回滚和崩溃恢复能力的事务安装,所以比 MyISAM 存储引擎占用更多的磁盘空间。

 

如果应用对事务的完整性有比较高的要求,在并发条件下要求数据的一致性,数据操作除了插入和查询以外,还包括很多的更新、删除操作,那么 InnoDB 存储引擎是比较合适的选择。

 

InnoDB 存储引擎除了可以有效地降低由于删除和更新导致的锁定,还可以确保事务的完整提交(Commit)和回滚(Rollback),对于类似计费系统或者财务系统等对数据准确性要求比较高的系统,InnoDB 都是合适的选择。

3) MEMORY

MEMORY 存储引擎将所有数据保存在 RAM 中,所以该存储引擎的数据访问速度快,但是安全上没有保障。

 

MEMORY 对表的大小有限制,太大的表无法缓存在内存中。由于使用 MEMORY 存储引擎没有安全保障,所以要确保数据库异常终止后表中的数据可以恢复。

 

如果应用中涉及数据比较少,且需要进行快速访问,则适合使用 MEMORY 存储引擎。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MySQL数据库的规划可以从以下几个方面考虑: 1. 数据库设计:确定数据库的结构,包括表的数量、表之间的关系、字段的定义以及主键、外键等约束。这需要根据业务需求和数据模型进行分析和设计。 2. 存储引擎选择:MySQL支持多种存储引擎,如InnoDB、MyISAM等。根据需求选择适合的存储引擎,考虑到事务支持、性能、并发性等因素。 3. 索引优化:根据查询需求,合理创建索引以提高查询性能。索引应该选择合适的列,并避免创建过多的索引,以免影响写入性能。 4. 分区策略:对于大型数据库,可以考虑使用分区表来提高查询性能和管理效率。分区可以按照范围、列表或哈希等方式进行划分。 5. 数据备份与恢复:制定合理的备份策略,包括完全备份、增量备份等,并定期进行数据备份。同时,确保备份数据的可靠性和及时性,以便在需要时进行恢复操作。 6. 安全与权限控制:设置适当的数据库用户和权限,限制用户的访问范围,确保数据安全性。此外,还可以考虑使用SSL加密连接、防火墙等措施来增强数据库的安全性。 7. 性能监控与调优:定期监控数据库的性能指标,如查询响应时间、资源利用率等,及时进行调优。可以使用MySQL自带的性能监控工具或第三方工具进行监控和优化。 以上是MySQL数据库规划的一些常见方面,具体的规划策略会根据实际需求和情况而有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值