mysql internal_MySQLInternal笔记
主要模块的交互(介绍mysql各个模块主要职责),当Connection Manager收到client连接的时候,则会初始化网络连接进程,然后建立C
主要模块的交互(介绍mysql各个模块主要职责)
当Connection Manager收到client连接的时候,则会初始化网络连接进程,然后建立Connetion handler进程。进而connection handler进程进行权限认证。
传过来的sql脚本将会被Command Dispatcher接收,如果是个复杂的指令,将会传到其他的模块去。
在Mysql的术语中,client有两种请求,一种是query,另外一种是command,query不仅包括select,还包括delete、insert等,这些语句是需要经过parser处理的,而command则不需要经过parser处理。
如果开启了query logging,那么command dispatcher 将会让logging module来做日志。
command dispatcher在使用parser之前,首先会调用query cache,query cache首先检查该query是不是可以被cache,是否有符合该query的数据已经被cache,如果有的话,就返回,如果miss了,就会执行parser。
执行好parser之后,,select由optimizer来处理;update、 inserts、 deletes和table创建语句,schema创建语句 schema alter语句由table modification module来处理;其他还有table maintenance module,replication module等等。
然后通过维护着table list的access control module,进入到Table manager,打开表并获取相应的锁,然后调用相应的引擎,实现query语句。
abstracted storage engine module自动将query转化为对应引擎的方法进行处理。
在query语句执行的时候,corresponding module会把一些结果集返回到client。
Mysql没有使用exceptions,因此在任何一层都需要使用错误检测语句。
当一个任务完成后,就会返回到connection module去等待新的任务。
slave也可能会读取二进制更新文件,这将会由master节点来负责。
如果一台机器被定义为slave,那么将会启动两个线程,一个是sql thread,另外一个是i/o线程。
网络连接将会通过Client/server protocol module来实现。而mysql的核心功能都由Core api来实现。
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉
本文系统来源:php中文网
mysql internal_MySQLInternal笔记相关推荐
- 字节跳动内部 MySQL 学习笔记火了,完整版开放下载!
最近很多小伙伴找我要一些 MySQL 基础资料,于是我翻箱倒柜,把这份阿里大牛总结的 MySQL 归纳笔记找出来,免费共享给大家! 据说有小伙伴靠这份笔记顺利进入 BAT 哦,所以一定要好好学习这份资 ...
- 【mysql学习笔记整理】
/*mysql学习笔记整理*/ /*常用的数据库操作对象*/ #库的操作 #创建 #数据库的创建 USE mysql; CREATE DATABASE db_x; #删除 #删除数据库 DROP DA ...
- MySQL自学笔记2--select的5个子句
MySQL自学笔记 使用的MySQL自带命令客户端,其中具体的操作是在自建的数据库下room303表中进行的,表中的列有:id.name.age.email.tel.salary.riqi.class ...
- MySql入门笔记二~悲催的用户
这些是当年小弟的MySql学习笔记,木有多么复杂的结构操作,木有多炫丽的语句开发,木有...总之就是木有什么技术含量... 日复一日,彪悍的人生伴随着彪悍的健忘,运维操作为王,好记性不如烂笔头,山水有 ...
- 初识mysql学习笔记
使用VMVirtualBox导入Ubuntu后,可以通过sudo apt-get install mysql-server命令下载mysql. 在学习过程中,我遇到了连接不上Xshell的问题.最终在 ...
- MySQL学习笔记07【事务、用户管理和权限管理】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySQL学习笔记06【多表查询、子查询、多表查询练习】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySQL学习笔记05【多表操作、三大范式、数据库的备份和还原】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySQL学习笔记04【数据库的查询操作、今日内容、表的约束】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
最新文章
- 转:SSL 握手协议详解
- 虚拟主机传奇服务器,虚拟主机市场迅猛发展 演绎网络产品传奇
- 全球及中国牵引螺丝行业规模现状与“十四五”发展前景预测报告2021-2027年版
- Integer Sequence Dividing
- float,double等精度丢失问题
- 1847 奇怪的数学题(杜教筛 + Min_25 + 第二类斯特林数)
- 链路状态路由协议与OSPF
- Logistic回归模型原理
- 【Vue】路由Router嵌套的实现及经典案例
- 从零学习perl语言--perl学习笔记(1)--从基础概念到hello world编写(本文约1000字)
- 【Python-3.3】使用while循环实现列表间数据移动
- java arraydeque poll,Java ArrayDeque pollLast()方法
- 家长或孩子图像的Gif动画小人在少儿学习软件中的妙用.
- 清北学堂模拟赛d1t5 拍照(photo)
- MSIL实用指南-一维数组的操作
- Java:如何通过代码判断字符是拼音还是英文单词?
- 企业微信PC版支持多个企业切换了
- 解决visual studio安装Dev后不显示控件或控件灰色不可用
- kindeditor 加载 html,为kindeditor编辑器添加“引用”(blockquote)标签
- 3Dtouch 基本原理