开发者学堂课程【MySQL 高级应用 - 索引和锁:存储引擎简介】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/598/detail/8586
存储引擎简介
内容介绍
一、如何用命令查看
二、MyISAM 和 InnoDB
三、阿里巴巴、淘宝用哪个
一、如何用命令查看
存储引擎有十多种,常用的只有两个是 InnoDB 和 MyISAM
#看你的 mysql 现在已提供什么存储引擎
mysql>show engines
;
#看你的 mysql 当前默认的存储引擎
mysql>show variables like
’
%storage_engine%
’
;
查看命令可以执行
storage_engine和show engines
mysql>show variables like
’
%storage_engine%
’
;
Variable_name |
Value |
default_storage_engine storage_engine |
InnoDB InnoDB |
首先执行
show variables like
’
%storage_engine%
’
;
InnDB 支持程度默认支持,支持事物且外界支持行锁
执行 show engines;
defau1t_storage_engine 的存储引擎是 InnoDB
storage_engine 的存储引擎也是 InnoDB
说明用的版本就是 InnoDB
二、MyISAM 和 InnoDB
1. MylSAM 不支持外键 InnoDB 支持外键
2.MylSAM 不支持事务 InnoDB 支持事务
3.MylSAM 表锁,即使操作一条记录也会锁住整个表,不适合高并发的操作
InnoDB 行锁 操作时只锁某一行,不对其它行有影响,适合高并发的操作
4.MylSAM 只缓存索引,不缓存真实数据
InnoDB 不仅缓存索引还要缓存真实数据,对内存要求较高,而且内存大小对性能有决定性的影响
5.MylSAM 表空间小 InnoDB 表空间大
6.MylSAM 的关注点是性能 InnoDB 的关注点是事务
7.默认安装这两个统一都安装
三、阿里巴巴、淘宝用哪个
lPercona 为 MySQL 数据库服务器进行改进,在功能和性能上 MySQL 有着很显著的提升。
该版本提升在高负载情况下的 InnoDB 的性能、为 DBA 提供一些非常有用的性能诊断工具:另外有更多的参数和命令来控制服务器行为。
l该公司新建一款存储引擎 xtadb 完全可以替代 innodb,并且在性能和并发上做的很好。
l阿里巴巴大部分 mysql 数据库其实使用的 percona 的原型加以修改AliSql+AliRedis