MySQL学习(一)大纲
1.逻辑架构
参考博客:https://blog.csdn.net/fuzhongmin05/article/details/70904190
- 最上层为客户端层,并非mysql独有,诸如:连接处理、授权认证、安全等功能均在这一层处理。
- 数据库连接池优化:HikariCP、Druid (参考博客:https://www.jianshu.com/p/0f58804b3dea)
- MySQL大多数核心服务均在中间这一层,包括查询解析、分析、优化、缓存、内置函数(比如:时间、数学、加密等函数)。所有的跨存储引擎的功能也在这一层实现:存储过程、触发器、视图等。
- 缓存,默认没有开启,mysql8.0+将删除缓存(参考博客:https://blog.csdn.net/Bb15070047748/article/details/106489254#:~:text=MySQL缓存机,化、执行sql。)
- 分析:
from...on...join...where...group by...having...select(distinct)...order by...limit
- 优化:索引、explain、慢日志查询、分库分表(水平、垂直)、读写分离
- 最下层存储引擎,默认使用InnoDB(使用B+树)(B树与B+树简明扼要的区别_Hannah-CSDN博客_b树与b+树的区别)
2.后面设计的内容
事务、隔离级别、特性ACID
锁
索引优化
InnoDB内存结构
MySQL学习(一)大纲的更多相关文章
- MySQL学习笔记-大纲
软件程序性能测试在之前<品味性能之道>系列中已经大量提到,讲解了很多测试方法.测试观念.测试思想等等.最近准备深入MySQL进行学习并总结.分别查阅<MySQL性能调优与架构设计&g ...
- MySQL学习笔记-锁相关话题
在事务相关话题中,已经提到事务隔离性依靠锁机制实现的.在本篇中围绕着InnoDB与MyISAM锁机制的不同展开,进而描述锁的实现方式,多种锁的概念,以及死锁产生的原因. Mysql常用存储引擎的锁 ...
- MySQL学习笔记-事务相关话题
事务机制 事务(Transaction)是数据库区别于文件系统的重要特性之一.事务会把数据库从一种一致状态转换为另一个种一致状态.在数据库提交工作时,可以确保其要么所有修改都已经保存了,要么所有修改都 ...
- MySQL学习笔记-数据库文件
数据库文件 MySQL主要文件类型有如下几种 参数文件:my.cnf--MySQL实例启动的时候在哪里可以找到数据库文件,并且指定某些初始化参数,这些参数定义了某种内存结构的大小等设置,还介绍了参数类 ...
- MySQL学习笔记-数据库内存
数据库内存 InnoDB存储引擎内存由以下几个部分组成:缓冲池(buffer pool).重做日志缓冲池(redo log buffer)以及额外的内存池(additional memory pool ...
- MySQL学习笔记-数据库后台线程
数据库后台线程 默认情况下讲述的InnoDB存储引擎,以后不再重复声明.后台线程有7个--4个IO thread,1个master thread,1个锁监控线程,1个错误监控线程.IO thread的 ...
- MySQL学习笔记-cache 与 buffer
Cache和Buffer是两个不同的概念,简单的说,Cache是加速"读",而 buffer是缓冲"写",前者解决读的问题,保存从磁盘上读出的数据,后者是解决写 ...
- MySQL学习笔记-MySQL体系结构总览
MySQL体系结构总览 不管是用哪种数据库,了解数据库的体系结构都是极为重要的.MySQL体系结构主要由数据库和数据库实例构成. 数据库:物理操作系统文件或者其它文件的集合,在mysql中,数据库文件 ...
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(二) 数据类型宽度
我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
随机推荐
- python中,元组,列表,字典,字符串的相互转换
#author:RXS002 #1.字典 dict = {'name':'Zara','age':7,'class':'First'} #字典转换为字符串,返回:<type 'str'> ...
- mqtt的使用
1.mqttws31.js /******************************************************************************* * Cop ...
- react native 上传图片(后面有空写一个,完整的案例)
图片上传的思路很正确 https://www.jianshu.com/p/c9f030fa6754 1. 获取图片路径 利用react-native-image-crop-pick 从手机中获得图片的 ...
- 定长线程池Demo
1 import java.util.concurrent.ExecutorService; 2 import java.util.concurrent.Executors; 3 4 /** 5 * ...
- php相关知识总结
class Father{ public static function getStatic(){ return new static(); } public static function getS ...
- Python基础数据类型-list(列表)
a = [1, 2, 3] a.append([1, 4]) a.append(8) a.append([8, 9, '10']) # 添加的是整体,即:将输入对象添加到列表末尾 print(a) # ...
- 选择 podman 的理由, 以及它和 Kubernetes , Docker 的区别
转载自https://zhuanlan.zhihu.com/p/506265757 前言 大家好,我是 Liangdi, podman 4.x 版本已经发布了, 我也从 docker 开始向 podm ...
- 在css 中使用calc并且含有变量
bottom:~"calc(.9rem + constant(safe-area-inset-bottom))"; bottom:~"calc(.9rem + env ...
- C#使用JSON相关
一.Json字符串转换为Dictionary /// <summary> /// JSON字符串转为 Dictionary /// </summary> /// <typ ...
- docker安装nginx挂载启动
docker pull nginx 命令安装 查找 Docker Hub 上的 nginx 镜像: docker search nginx 这里我们拉取官方的镜像 docker pull nginx ...