【MySQL】MySQL 架构

news2024/9/22 9:47:20

一、MySQL 架构

C/S 架构,即客户端/服务器架构。服务器程序直接和我们存储的数据打交道,多个客户端连接这个服务器程序。客户端发送请求,服务器响应请求。

MySQL 数据库实例 :即 MySQL 服务器的进程 (我们使用任务管理器查看,可以看到的 mysqld 就是 MySQL 服务器的进程 )

1.1 MySQL 客户端和服务器通信方式 :

1. TCP / IP

因为实际生产环境下,服务器和客户端可能运行在不同的主机中,于是需要通过网络来通信。MySQL 使用 TCP 作为通信协议。

每个计算机有个唯一的 IP 地址,MySQL 服务器再想操作系统申请一个 端口号 (默认为 3306),就可以进行网络通信了。

可以联想到我们使用 SpringBoot 时,配置 yml 文件填写 MySQL 服务器地址 (即 TCP/IP通信的实例)

2. 命名管道和共享内存

服务器和客户端在同一个 Windows 主机上

3. Unix 域套接字文件

客户端和服务器连接相同的 UNIX 套接字文件 ( /tmp/mysql.sock )

1.2 MySQL 服务器如何处理客户端请求

连接管理 —— 解析与优化 —— 存储引擎

在这里插入图片描述

- 连接管理

客户端进程通过 1.1 节介绍的三种连接方式与服务器建立连接,客户端创建一个连接,服务器创建一个线程专门处理这个连接。

如何避免频繁创建消耗线程:

客户端断开连接时,服务器缓存下与之建立连接的这个线程。新的客户端进行连接时,把这个线程分配给它。

- 解析与优化

(1)查询缓存

缓存不命中原因:

  1. 查询请求在任意字符上的不同
  2. 查询请求包含系统函数、用户自定义变量和函数、一些系统表 (这种情况不会被缓存)

缓存失效:

MySQL 检测表的变化,有变化,删缓存

(2) 语法解析

解析客户端发过来的文本

(3)查询优化

MySQL 优化程序对自动进行优化(外连接转内连接、表达式简化
子程序转连接等),提高效率

- 存储引擎

存储引擎是 MySQL 服务器对数据存储和提取操作的封装 ,不同的存储引擎具有不同的存储结构和存取算法

MySQL Server 完成了查询优化后,按照生成的执行计划调用底层存储引擎提供的 API, 再把获取到的数据返回给服务端

存储引擎相关操作:

SHOW ENGINES
CREATE TABLE 表名(
 建表语句;
) ENGINE = 存储引擎名称;
ALTER TABLE 表名 ENGINE = 存储引擎名称;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/359355.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue组件间通信的四种方式(函数回调,自定义事件,事件总线,消息订阅与发布)

目录 概述 props配置项-回调函数实现 自定义事件实现 事件总线实现 消息订阅与发布实现 概述 在组件化编程中,组件间的通信是重要的,我们可以有四种方式实现组件间的通信。 分别是:函数回调,自定义事件,事件总…

可调恒流驱动LED电路分析

https://www.icxbk.com/article/detail?aid884 常规使用的pwm调亮度不仅会导致频闪,而且在长时间使用的时候,有损坏led的风险,所以这次设计了一个恒流调亮度电路,其电路图如下所示 电路原理的解读: 左侧的电位计起着…

【JavaScript】js实现深拷贝的方法

前言 在js中我们想要实现深拷贝,首先要了解深浅拷贝的区别。 浅拷贝:只是拷贝数据的内存地址,而不是在内存中重新创建一个一模一样的对象(数组) 深拷贝:在内存中开辟一个新的存储空间,完完全全…

Java语言常用哪些运算符?

之前有个大家讨论过java的数据类型,总体来说类型和其他几种语言也相差无几,我为什么会这样说?我们应该都要知道Python可还有个复数类型。 这里主要给大家讲解Java运算符的分类和使用。 一、运算符分类 说到运算符,我们可以先了…

硬件系统工程师宝典(9)-----如何正确使用去耦电容

各位同学大家好,欢迎继续做客电子工程学习圈,今天我们继续来讲这本书,硬件系统工程师宝典。上篇我们说到在电源完整性分析时,明确噪声来源可以有效的避免、解决噪声问题。今天我们来看看电源完整性分析中重要的一环,去…

【自动化测试】web自动化测试验证码如何测?如何处理验证码问题?解决方案......

目录:导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)前言 在对安全性有要求的…

线程池ThreadPoolExecutor源码剖析

一、Java构建线程的方式 继承Thread (也实现了Runnable) 实现Runnable 实现Callable (与Runnable区别…) 线程池方式 (Java提供了构建线程池的方式)[可以实现Runnable 和 Callable 功能] Java提供了Exe…

使用Vue3实现一个可复制的表格

前言 表格是前端非常常用的一个控件,但是每次都使用v-for指令手动绘制tr/th/td这些元素是非常麻烦的。同时,基础的 table 样式通常也是不满足需求的,因此一个好的表格封装就显得比较重要了。 最基础的表格封装 最基础基础的表格封装所要做…

【并发编程十七】c++实现一个线程池

【并发编程十七】c实现一个线程池一、线程池原理二、实现重点三、个人理解四、实验简介: 大多数系统上,若因某些任务可以与其他任务并行处理,就分别给他们配备专属的线程,则这种做法不切实际。但是只要有可能,我们还是…

C语言进阶——动态内存管理(上)

🌇个人主页:_麦麦_ 📚今日名言:“你若爱,生活哪里都可爱。你若恨,生活哪里都可恨。你若感恩,处处可感恩。你若成长,事事可成长。不是世界选择了你,是你选择了这个世界。既…

mdio协议

1. 简介 MDIO接口中有特定的术语定义总线上的各种设备,驱动MDIO总线的设备被定义为站管理实体(STA),而被MDC管理的目标设备称为可被MDIO管理的设备(MMD)。 STA初始化MDIO所有的通信,同时负责驱动…

【数据结构与算法】哈希表1:字母异位词 两数交集 快乐数 两数之和

文章目录今日任务1.哈希表理论基础(1)哈希表(2)哈希函数(3)哈希碰撞(4)链地址法(拉链法)(5)线性探测法(6)常见…

Python采集双色球数据,做数据分析,让我自己实现自己的富豪梦

来唠点嗑? 咳咳,最近是咋的了,某站掀起了一股双色球热潮?一般我自己的账号上,是很少看到关于python这些内容的,都是小姐姐和热梗,或者其他搞笑视频 由于💴的吸引力…手不自觉的就点…

《系统架构设计》-03-软件结构体系和架构风格

文章目录1. 软件结构体系1.1 抽象(Abstract)1.1.1 抽象的应用1.1.2 不同层次的抽象1.2 组件(Component)1.2.1 定义1.2.2 切入点1.3 组织过程资产(Organizational Process Assets)1.3.1 定义1.3.2 作用1.4 体…

springboot整合Chat Generative Pre-trained Transformer

什么是Chat Generative Pre-trained Transformer Chat Generative Pre-trained Transformer,是以人工智能驱动的聊天机器人程序 ,已经更新多个版本,很多大厂也都在接入其API。 整合难度 难度一颗星,基本上就是给官方API发请求&am…

特征工程:特征构造以及时间序列特征构造

数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。由此可见,特征工程在机器学习中占有相当重要的地位。在实际应用当中,可以说特征工程是机器学习成功的关键。 那特征工程是什么? 特征工程是利用数据领域的相关…

UI自动化测试之设计框架

目的 相信做过测试的同学都听说过自动化测试,而UI自动化无论何时对测试来说都是比较吸引人的存在。 相较于接口自动化来说它可以最大程度的模拟真实用户的日常操作与特定业务场景的模拟,那么存在即合理,自动化UI测试自然也是广大测试同学职…

身为大学生,你不会还不知道有这些学生福利吧!!!!

本文介绍的是利用学生身份可以享受到的相关学生优惠权益,但也希望各位享受权利的同时不要忘记自己的义务,不要售卖、转手自己的学生优惠资格,使得其他同学无法受益。 前言 高考已经过去,我们也将迎来不同于以往的大学生活&#x…

磁盘结构

一.盘片 盘片是一个圆形坚硬的表面,通过引入磁性变化来永久存储数据,这些盘片通常由一些硬质材料(如铝)制成,然后涂上薄薄的磁性层,即使驱动器断电,驱动器也能持久存储数据位。每个盘片有两面&a…

袋鼠云高教行业数字化转型方案,推进数字化技术和学校教育教学深度融合

在当前的数字化转型浪潮下,“基础设施、配套设备、应用探索”的数字校园1.0阶段即将步入尾声、亦或已经完结,不同地区和类型的高校通过各类信息化系统和基础设施已经初步实现了业务数字化,整个数字校园的信息基础设施底座已有一定基础、信息时…