MySQL内部的核心组件

本文介绍了MySQL内部的核心组件,包括MySQL驱动、连接池、工作线程、SQL接口、SQL解析器、查询优化器、执行器组件和存储引擎接口。MySQL驱动用于建立网络连接,连接池管理数据库连接以提高性能,工作线程负责监听SQL请求并转发给SQL接口。SQL接口不直接执行SQL,而是由SQL解析器解析后,查询优化器选择最优执行路径,执行器组件调用存储引擎执行SQL。存储引擎接口则负责实际的数据操作,如查询内存缓存和磁盘数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mysql前言

1.MySQL的驱动
2.数据库的连接池
3.MySQL的工作线程
4.SQL接口
5.SQL解析器
6.查询优化器
7.执行器组件
8.存储引擎接口

1.MySQL的驱动是做什么的?

尤其记得刚刚学习MySQL的时候,引入的pom坐标:mysql-connector-java,这个驱动是啥玩意,其实也很简单理解,其实就是和MySQL建立网络连接:在访问数据库的时候,Java系统必须要和MySQL建立一个网络连接,这个connector就是面向Java语言的驱动。

2.MySQL数据库的连接池到底是用来做什么的?

连接就是一条连接,连接池就是存放这些一条条的连接的,那么为什么要用到连接池,这个也很简单,不可能我执行一条sql语句,去和MySQL建立一次连接,然后执行完事后,再销毁连接,然后依次类推,这样是十分消耗资源和性能的,也是完全没有必要的。其实这个道理和线程池的道理差不多,一个线程,创建销毁,一个连接创建销毁,于是就有了连接池和线程池的管理,让系统把精力放在业务上,而不是耗费大量的功夫在创建连接,销毁连接上,创建一个连接也是十分耗时的,连接池市面上有很多:例如C3P0、Driver等等。

3.MySQL的工作线程主要使用来做什么的?

一条SQL语句,谁来负责从连接中获取,谁会将SQL转交给SQL接口,这里聊下题外话,MySQL并不是你直接发给他一条SQL语句,他就直接去执行了,内部其实和Java系统差不多,经过你的A业务逻辑,再经过你的B业务逻辑,最后return回去对应的数据(结果集),所以这个工作线程主要的作用就是用来从连接池中监听发送过来的SQL请求,以及将监听到的SQL执行请求转发给SQL接口。

4.MySQL内部的SQL接口能直接执行SQL语句吗?

做Java开发的,

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值