美文网首页
MySQL 基本概念

MySQL 基本概念

作者: 林万程 | 来源:发表于2021-08-30 15:05 被阅读0次

MyISAM:无事务、锁表、读写互相阻塞、索引不缓存数据、数据与索引分离,都是【非聚集索引】
InnoDB:有事务,默认用主键or唯一非空列or隐藏列建立【聚集索引】(只能有一个),索引和数据在同一个B(平衡)树,影响增改性能,速度快,特性如下:

  • 插入缓冲(insert buffer)
  • 两次写(double write)
  • 自适应哈希索引(adaptive hash index,AHI)
  • 异步IO(asynchronous IO,AIO)
  • 刷新邻接页(flush neighbor page)

稠密索引、稀疏索引

下面三个是很常见的知识点,一定要反复复习记住

ACID

  • 原子性 atomicity
  • 一致性 consistency
  • 隔离性 isolation
  • 持久性 durability

隔离级别

隔离级别 脏读 不可重读 幻读 英文名 默认
RU 读未提交 Read uncommitted
RC 读已提交 × Read committed 其他
RR 可重读 × × Repeatable read MySQL
S 串行化 × × × Serializable
  • 读未提交 = 脏读,没有隔离性,Saga 分布式事务的缺点
  • 读已提交 = 不可重读:更新,一个事务两次读取内容不一样
  • 幻读:插入,一个事务两次读取条数不一样,MySQL 用 MVCC 解决
  • 多版本并发控制 MVCC Multiversion Concurrency Control
    • DB_TRX_ID 最近增改事务ID
    • DB_ROLL_PTR 回滚指针,上一版本 0x...
    • DB_ROW_ID 自增ID,没有主键时的聚簇索引
    • DELETED_BIT 删除

CAP

  • 一致性 Consistency
  • 可用性 Availability
  • 分区容错性 Partition tolerance

与缓存一致性

  • 先更新数据库,避免刚删完缓存就被其他线程刷入旧数据
  • 缓存使用删除而不是更新,避免更新时数据库内容已经变了

相关文章

  • Mysql入门操作

    Mysql 基本概念 Mysql Server idnameremark1zxm2zzm30000000sgf 1...

  • mysql的一些基本概念

    前言 开始学习mysql,总结一下一些mysql的基本概念。 PS: 我只是知识的搬运工 基本概念 逻辑架构 事务...

  • mysql 第一章,基本用法

    数据库的概述 数据库的基本概念 mysql -u root -p密码//进入MySQL use mysql;//进...

  • MySQL:2、MySQL基础语法

    Linux命令补充 MySQL的基本概念 字段类型 http://www.runoob.com/mysql/mys...

  • 01 DDL DML DQL

    今日内容 数据库的基本概念 MySQL数据库软件安装卸载配置 SQL 数据库的基本概念 MySQL数据库软件 SQ...

  • MySQL基础笔记

    今日内容 数据库的基本概念 MySQL数据库软件安装卸载配置 SQL 数据库的基本概念 MySQL数据库软件 SQ...

  • MySQL开发心得笔记超详细

    MySQL开发心得笔记超详细 一、理解MySQL基本概念 二、MySQL数据库启动以及启动的判断 三、如何使用官方...

  • A.001.3.Mysql存储引擎

    1.存储引擎的基本概念 2.MySQL 5.7 支持的存储引擎 3.MySQL数据库中的存储引擎 4.MySQL ...

  • 20171110 MySQL进阶(一)

    数据库基本概念回顾数据库的并发控制:锁MySQL的事务设置MySQL的索引设置MySQL的用户和权限管理 一、数据...

  • MySQL基本概念

    数据库:是一些关联表的集合。

网友评论

      本文标题:MySQL 基本概念

      本文链接:https://www.haomeiwen.com/subject/zshgiltx.html