第⼀章 MySQL的架构与历史

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 第⼀章 MySQL的架构与历史

server层与引擎层

server层做了⼀些查询优化、分析,还有存储过程、触发器、视图等。 引擎层负责数据得存储和提取。

锁粒度

1. ⾏锁

2. 表锁


事务

⼀组原⼦性操作,要么全部成功,要么全部失败。ACID,原⼦性、⼀致性、隔离性、持久性。

隔离级别

1. 未提交读

2. 已提交读

3. 可重复读

4. 串⾏化

死锁


死锁就是多个事务相互占⽤同⼀资源,请求保持资源不释放,导致恶性循环。innodb的⽅式就是讲持有最少⾏级排他锁的事务进⾏回滚。


事务⽇志

WAL(

write-ahead-logging)预先写⼊⽇志。


隐式锁定和显示锁定

锁在commit和rollback时释放。使⽤ in share mode,和for update 表示当前读,读最新的值。


多版本并发控制(MVCC)

处于并发的考虑,实现了mvcc机制减少了加锁的操作。通过保存数据在某个时间点的快照实现的。mvcc有乐观和悲观类型。

每⼀⾏数据都有版本号,在innodb的操作中,事务只会看到能看到的数据版本。也就是MySQL45讲中提出的⾼低⽔位,判断事务是否符合⾼低⽔位的范围。

这样可以使的多数读操作不⽤加锁,提⾼性能。mvcc只在RR、RC级别⼯作,因为RU读最新数据,串⾏化对所有读取⾏加锁。

MySQL的存储引擎

使⽤show table status like '表的名字' 查看表的结构

innodb⽀持事务,采⽤mvcc机制,实现了四个隔离级别。

myisam不⽀持⾏级锁与事务,崩溃后⽆法恢复,数据和索引分开。⽀持表级锁,可以执⾏修复,不⽀持blob和text等⻓字段。

原⼦DDL

要么修改全部完成,要么全部失败。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6天前
|
存储 SQL 关系型数据库
Mysql高可用架构方案
本文阐述了Mysql高可用架构方案,介绍了 主从模式,MHA模式,MMM模式,MGR模式 方案的实现方式,没有哪个方案是完美的,开发人员在选择何种方案应用到项目中也没有标准答案,合适的才是最好的。
50 3
Mysql高可用架构方案
|
1月前
|
监控 关系型数据库 MySQL
深入了解MySQL主从复制:构建高效稳定的数据同步架构
深入了解MySQL主从复制:构建高效稳定的数据同步架构
113 1
|
2月前
|
NoSQL 关系型数据库 MySQL
微服务架构下的数据库选择:MySQL、PostgreSQL 还是 NoSQL?
在微服务架构中,数据库的选择至关重要。不同类型的数据库适用于不同的需求和场景。在本文章中,我们将深入探讨传统的关系型数据库(如 MySQL 和 PostgreSQL)与现代 NoSQL 数据库的优劣势,并分析在微服务架构下的最佳实践。
|
2天前
|
SQL 存储 缓存
【赵渝强老师】MySQL的体系架构
本文介绍了MySQL的体系架构,包括Server层的7个主要组件(Connectors、Connection Pool、Management Service & Utilities、SQL Interface、Parser、Optimizer、Query Caches & Buffers)及其作用,以及存储引擎层的支持情况,重点介绍了InnoDB存储引擎。文中还提供了相关图片和视频讲解。
【赵渝强老师】MySQL的体系架构
|
3月前
|
SQL 关系型数据库 MySQL
(二十五)MySQL主从实践篇:超详细版读写分离、双主热备架构搭建教学
在上篇《主从原理篇》中,基本上把主从复制原理、主从架构模式、数据同步方式、复制技术优化.....等各类细枝末节讲清楚了,本章则准备真正对聊到的几种主从模式落地实践,但实践的内容通常比较枯燥乏味,因为就是调整各种配置、设置各种参数等步骤。
513 2
|
4月前
|
SQL 存储 关系型数据库
(一)全解MySQL之架构篇:自顶向下深入剖析MySQL整体架构!
无论你是前端还是后端,只要是一个合格的开发者,对于MySQL这个名词相信都不陌生,MySQL逐渐成为了最受欢迎的关系型数据库,无论你是大前端,亦或是Java、Go、Python、C/C++、PHP....等这些语言的程序员,对于MySQL是必然要掌握的核心技术之一,程序员不能没有MySQL,就像西方不能失去耶路撒冷一般。
754 0
|
4月前
|
开发框架 前端开发 关系型数据库
ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
|
SQL 缓存 NoSQL
MySQL架构与SQL的执行流程_2
MySQL架构与SQL的执行流程_2
146 0
MySQL架构与SQL的执行流程_2
|
SQL 缓存 网络协议
MySQL架构与SQL的执行流程_1
MySQL架构与SQL的执行流程_1
143 0
MySQL架构与SQL的执行流程_1
|
3天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
15 4

热门文章

最新文章

推荐镜像

更多
下一篇
无影云桌面