MySQL专栏
文章平均质量分 76
个人学习MySQL的笔记与心得,由于个人能力问题,文章中存在不少问题,请各位大佬多多指教。
it00zyq
IT菜鸟
展开
-
MySQL中执行SQL的BufferPool缓存机制
文章目录一、MySQL底层结构图二、MySQL日志及缓存机制一、MySQL底层结构图二、MySQL日志及缓存机制看完MySQL的底层结构图,很多人可能会有这样的疑问:为什么MySQL不能直接更新磁盘上的数据而且设置这么一套复杂的机制来执行SQL呢?因为如果每一个请求直接对MySQL数据文件进行读写,是随机IO,对于每次读写,机械硬盘都有寻道时间和旋转延迟,因此直接更新数据磁盘文件性能是比较低的,对于固态硬盘,也需要通过地址转换机制确定读写位置,所以直接更新磁盘文件是不能让数据库抗住很高并发的。原创 2022-02-14 12:27:44 · 681 阅读 · 0 评论 -
MySQL使用explain工具查看执行计划
文章目录一、Explain工具介绍二、Explain中的字段信息2.1、id2.2、 select_type2.3、table2.4、type2.5、possible_keys2.6、key列2.7、key_len列2.8、ref列2.9、rows2.10、extra一、Explain工具介绍EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句的预估执行情况。在SELECT语句之前增加explain关键字,MySQL 会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是执行这原创 2022-02-14 10:56:10 · 602 阅读 · 0 评论 -
MySQL使用trace工具查看执行计划
文章目录一、什么是trace工具二、trace工具的使用三、结构分析3.1、SQL准备阶段3.2、SQL分析、优化阶段四、重要信息分析一、什么是trace工具MySQL5.6版本开始,推出了对SQL的跟踪工具trace,通过使用trace,用户可以查看MySQL优化器对SQL语句的分析结果,以及生成了怎样的执行计划。二、trace工具的使用1、开启/关闭trace工具开启:set session optimizer_trace="enabled=on",end_markers_in_json原创 2022-02-11 10:36:58 · 2916 阅读 · 0 评论 -
MySQL索引实战
文章目录一、准备测试环境1.1、创建数据表1.2、创建生成数据的函数1.3、执行过程生成测试数据二、索引实战测试一、准备测试环境1.1、创建数据表/* 员工表 */CREATE TABLE `emp` ( `id` int(8) NOT NULL AUTO_INCREMENT, `name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '', `job` varchar(9) NOT NU原创 2022-02-11 09:02:29 · 899 阅读 · 0 评论 -
MySQL索引下推
文章目录一、概念二、示例三、实践一、概念索引下推(index condition pushdown )简称ICP,在Mysql5.6的版本上推出,用于提高查询效率。在MySQL5.6之前的版本,使用非主键索引进行查询时,存储引擎通过索引检索到数据,然后返回给MySQL Server 层,由其查询主键索引(聚簇索引),判断数据是否符合查询条件。Mysql5.6推出索引下推后,使用非主键索引进行查询时,存储引擎通过索引检索到数据,并根据索引包含的字段对数据再进行一次筛选,再返回给MySQL Serve原创 2022-02-10 22:00:46 · 819 阅读 · 0 评论 -
MySQL常见面试题
为什么InnoDB表必须要建主键,且推荐使用整型自增主键InnoDB表数据是使用B+ Tree进行存储,需要一个具有唯一性的字段组织形成B+ Tree。如果没有建主键,则InnoDB会选择第一个不包含有NULL值的唯一索引作为主键索引;如果也没有这样的唯一索引,则InnoDB会选择内置6字节长的ROWID作为隐含的聚集索引。为避免Mysql为我们维护隐性的索引,故而InnoDB表要建主键。为什么推荐使用整型索引呢?在定位某一个索引时,需要进行多次的数据比较,才能确定索引我位置,在比较速度上来说原创 2022-02-08 22:39:49 · 2803 阅读 · 2 评论 -
MySQL中SQL语句的执行过程
文章目录一、MySQL内部组件结构1.1、服务层Server1.1.1 连接器1.1.2 查询缓存1.1.3 分析器1.1.4 优化器1.2、引擎层Store二、SQL的执行过程一、MySQL内部组件结构1.1、服务层Server主要包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。1.1.1 连接器每个客户端与MySQL服务器通过T原创 2022-02-08 18:11:55 · 212 阅读 · 0 评论 -
SQLyog的下载与安装
1、下载安装包SQLyog下载链接2、安装2.1、选择语言,默认即可2.2、下一步即可2.2、接受协议并下一步2.3、选择选项2.4、选定安装目录2.5、安装完成3、连接Mysql服务看到这个界面就连接成功了。...原创 2021-05-13 16:28:13 · 143388 阅读 · 16 评论 -
MySQL基础
文章目录一、Mysql的基础概念二、数据库操作语句三、数据表操作语句四、数据类型4.1、整数类型4.2、浮点类型4.3、字符串类型char与varchar的使用细节4.4、日期类型一、Mysql的基础概念Mysql,就是一个数据库管理系统(DBMS),这个管理系统可以管理多个数据库,每个数据库下又有多张表Mysql,数据库,数据表的关系如下SQL语句分类1)数据定义语句:DDL [CREATE 表/库 …]2)数据操作语句:DML [添加 INSERT,删除 DELETE,修改 UPDATE原创 2021-05-10 22:37:32 · 149 阅读 · 0 评论 -
win10系统下MySQL8的卸载与安装
一、完全卸载Mysql打开任务管理器,关闭Mysql服务右键停止即可;也可以以管理员身份打开CMD,执行命令net stop mysql80,这里的mysql80是我的mysql服务名,其他版本的服务名可能不一样。打开控制面板,卸载Mysql相关软件删除服务此时打开任务管理器,查看服务选项,如果mysql服务还存在,则执行以下操作:以管理员身份打开CMD,执行命令sc delete mysql80,这里的mysql80是我的mysql服务名,其他版本的服务名可能不一样,服务名可通原创 2021-05-10 01:41:57 · 1469 阅读 · 0 评论 -
彻底理解MySQL索引
1、什么是索引索引:排好序的数据结构。Mysql索引的数据结构有Hash表与B+树。Hash索引的局限性是不支持范围查找,因此在实际工作中一般使用B+树索引(B+ Tree的叶子结点存储了相邻结点 )。2、Mysql两种常见引擎InnoDBMyISAM是否使用聚集索引是。索引文件与数据文件是不分离的,存储在同一文件中。B+树中,叶子节点包含了完整的数据记录。否。索引文件与数据文件是分离的。B+数中,叶子节点存储的是对应数据的在磁盘中地址。3、Inn原创 2021-02-17 21:28:40 · 438 阅读 · 1 评论
分享