【MySQL | 进阶】存储引擎

前文回顾:事务

1. MySQL体系结构

2. 存储引擎简介

存储引擎就是存储数据,建立索引。更新 / 查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,所以存储引擎也被称为表类型

  1. 在创建表时,指定存储引擎

CREATE TABLE 表名(

字段1 字段类型1 [COMMENT 字段1注释]

...

字段n 字段n类型 [COMMENT 字段n注释]

)ENGINE = INNODB[COMMENT 表注释];

  1. 查看当前数据库支持的存储引擎

SHOW ENGINES;

sql 复制代码
-- 查看建表语句
show create table account; -- ENGINE=InnoDB默认存储引擎


--  查询当前数据库支持的存储引擎
show engines;

-- 创建建表 my_memory,指定MyISAM存储引擎
create table my_myisam(
  id int,
  name varchar(10)
)engine = MyISAM;

3. 存储引擎特点

3.1 InnoDB

InnoDB:InnoDB是一种兼顾高可靠性高性能的 通用存储引擎,在MySQL 5.5 之后,InnoDB是默认的MySQL存储引擎

特点:

  • DML 操作遵循ACID模型,支持事务;(DML数据库的增删改);
  • 行级锁,提高并发访问性能;
  • 支持外键 FOREIGN KEY约束,保证数据的完整性和正确性;

文件

  • xxx.ibd: xxx代表的是表名,innodb引擎的每张表都会这样一个表空间文件,存储该表结构 (frm,sdi),数据索引。参数innodb_file_per_table

3.2 MySAM

3.3 Memory

三种引擎的区别

4. 存储引擎选择

5.总结

相关推荐
zhousenshan9 分钟前
springboot事务管理几种方式
数据库
布局呆星33 分钟前
SQLite数据库的介绍与使用
数据库·python
2401_8384725134 分钟前
用Python和Twilio构建短信通知系统
jvm·数据库·python
石头wang39 分钟前
oracle jdbc 依赖以及对dbeaver的性能影响,如何选择oracle驱动, oracle jdbc 驱动
数据库·oracle
weixin_4521595541 分钟前
如何从Python初学者进阶为专家?
jvm·数据库·python
2301_790300961 小时前
用Python读取和处理NASA公开API数据
jvm·数据库·python
万象.1 小时前
redis持久化:AOF和RDB
数据库·redis·缓存
tod1132 小时前
力扣高频 SQL 50 题阶段总结(四)
开发语言·数据库·sql·算法·leetcode
!chen2 小时前
Redis快速实现布隆过滤器
数据库·redis·缓存
2301_790300962 小时前
数据分析与科学计算
jvm·数据库·python