高性能mysql笔记总结—chapter01

数据库的逻辑架构

mysql是客户端和服务端的架构,一个客户端占有一个客户端进程的线程连接,线程是会被客户端缓存起来的。

第一层是处理认证和连接

第二层用来解析和优化查询

第三层是用来存储引擎层

特点是存储引擎是可插拔的,也就是说可以替换的

并发问题

加表级别锁或者行级别的锁,表级别的锁是服务端就支持的,而行级别的锁是存储引擎层支持的。

读写锁的机制,读锁是可重复读,写锁是排它锁。

事务

acid,原子性,一致性,隔离性,持久性四个特性

事务的隔离级别

不可重复读,读以提交,可重复读,串行读

事务日志

先修改内存中的值,然后将事务的执行语句顺序写到磁盘,顺序写比较快,然后再另外写入到磁盘中,这种方式叫write ahead logging

mvcc

多版本事务控制,是通过保存快照来实现的。是指每一行都会多两个字段,分别表示行的创建时间和删除时间,实际上,就是行级别锁的一种实现方式。

mysql的存储引擎

主要其实就两种,分别是innodb和myisam是最常用的,95都是选择的innodb

相关推荐
zhuiyisuifeng3 分钟前
Node.js使用教程
java
忙什么果6 分钟前
transformer学习笔记2
笔记·学习·transformer
李庆政3709 分钟前
Reactor-core 响应式编程 spring-boot-starter-webflux
java·spring boot·reactor·响应式编程·reactor-core
是Smoky呢11 分钟前
springAI+向量数据库+RAG入门案例
java·开发语言·ai编程
ZhiqianXia11 分钟前
Gem5 学习笔记(2) : Gem5 建模要点与基本思路
笔记·学习
huabiangaozhi21 分钟前
修改表字段属性,SQL总结
java·数据库·sql
请为小H留灯23 分钟前
一键解决 IDEA 中 Java 项目变橙色的问题!!!
java·ide·maven·intellij-idea·java项目
Dxy123931021635 分钟前
ECharts折线图入门学习:从基础到实战的完整指南
学习·信息可视化·echarts
小文大数据42 分钟前
python实现HTML转PDF
java·前端·数据库
架构师沉默1 小时前
为什么 Dubbo 从 ZooKeeper 转向 Nacos?
java·后端·架构