Mysql简短又易懂

MySql

连接池:的两个参数

最大连接数:可以同时发起的最大连接数

单次最大数据报文:接受数据报文的最大长度

数据库如何存储数据

存储引擎:

InnoDB:通过执行器对内存和磁盘的数据进行写入和读出

  1. 优化SQL语句
  2. innoDB会把需要写入或者更新的数据写入Bu方法二POOL中
  3. 程序员通过执行器连接BufferPool 同时将之前的数据记录到Undo Log日志文件中
  4. 线程将需要更新写入的数据读出后写入磁盘 这个过程通过 OPean+write函数构成
  5. 为了防止突然断电数据丢失 在读入数据时会象Redo Log Buffer中写入一份相同的数据。然后再将其刷到磁盘中
  6. 写入成功后BingLog会向RedoLog告知写入完毕的事

3 Mysal如何保管数据

数据在数据库中以磁盘和内存两种形式存在

磁盘:建表后innoDB会在磁盘的目录下创建于这个表对应的两个文件t.frm(存储表结构) t.ibd(表空间:用来存储数据和索引)表中的最小单位是页这也是与磁盘交互的最小单位,页大小 16kb

4 MySql如何查询数据

  1. 客户端通过连接驱动和连接池连接,客户端向连接池发送一个单独的数据包,同时传输数据包的大小是有上限的
  2. 接受到sql后在查询缓存的地方查找(8.0后被删除)
  3. 查询缓存中没有就通过sql解析器来解析sql语句
  4. 解析后的sql会被提交给预处理器,优化器优化 优化后sql就会变成呢一个可以执行的执行计划
  5. 执行器 根据执行计划 在Handler API中查找相应的API,同时进行组合和调用达成执行计划(优化器会通过Handle实例来获取表和列等信息),调用Api来拿到返回结果。

数据页

结构:页头页尾 数据行

数据行:会直接与表中的数据行相对应

相关推荐
lingggggaaaa7 小时前
小迪安全v2023学习笔记(一百三十四讲)—— Windows权限提升篇&数据库篇&MySQL&MSSQL&Oracle&自动化项目
java·数据库·windows·笔记·学习·安全·网络安全
小光学长7 小时前
基于Vue的保护动物信息管理系统r7zl6b88 (程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
前端·数据库·vue.js
一匹电信狗7 小时前
【MySQL】数据库的相关操作
linux·运维·服务器·数据库·mysql·ubuntu·小程序
陈一Tender8 小时前
JavaWeb后端实战(登录认证 & 令牌技术 & 拦截器 & 过滤器)
java·开发语言·spring boot·mysql
TDengine (老段)9 小时前
连接 TDengine 遇到报错 “failed to connect to server, reason: Connection refused” 怎么办?
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
李慕婉学姐10 小时前
Springboot黄河文化科普网站5q37v(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
Cabbage_acmer10 小时前
MySQL期中考试突击!
数据库·mysql
Lu Yao_10 小时前
Redis 缓存
数据库·redis·缓存
小桥流水人家哇11 小时前
性能测试单场景测试时,是设置并发读多个文件,还是设置不同的用户读不同的文件?
数据库·性能测试技巧
表示这么伤脑筋的题我不会11 小时前
Oracle 21C 部署ogg踩过的坑
数据库·oracle