![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 94
cj_ervin
这个作者很懒,什么都没留下…
展开
-
InnoDB索引及优化
写在前面本文章是学习掘金小册《MySQL 是怎样运行的:从根儿上理解 MySQL》 之后整理的,文章大量使用和借鉴了该小册的内容。另外小册很不错,讲解十分到位,推荐阅读。我们在上一篇文章 《 InnoDB中数据是如何存储的 》中详细介绍了MySQL数据存储的细节,包括 行格式 和 页 。我们知道页分为很多种,本篇文章中主要涉及两种 数据页 和 索引页,我们知道 数据页 是存储数据的,那 索引页 又是用来做什么的呢?ok,多的不说,少的不唠,我们直接开始吧。试想一下,如果没有索引,我们单纯依靠叶子原创 2022-01-20 16:17:56 · 941 阅读 · 0 评论 -
InnoDB中数据是如何存储的
写在前面本文章是学习掘金小册《MySQL 是怎样运行的:从根儿上理解 MySQL》 之后整理的,文章大量使用和借鉴了该小册的内容。另外小册很不错,讲解十分到位,推荐阅读。如果你学习或使用过MySQL,那么或多或少知道页的概念,它是InnoDB管理存储空间的基本单位,一个页的大小一般是16KB,而一个页中又存储了多条记录。这篇文章将从单条记录到页,带你了解MySQL中数据存储的秘密。InnoDB记录存储结构–行格式我们知道MySQL中真正存储数据的是存储引擎,因为MySQL中存储的数据一般都是比较原创 2022-01-20 16:17:02 · 1398 阅读 · 0 评论 -
MySQL中的字符集和比较规则
如果你还因为MySQL乱码摸不着头脑,如果你只知道存储emoji表情时,需要使用utf8mb4,但却不知道为什么,那么本篇文章或许能解开你的一些疑惑。字符集和排序规则什么是字符集:字符集指的是某个字符范围的编码规则,一个字符映射成一个二进制数据的过程也叫做编码,将一个二进制数据映射到一个字符的过程叫做解码。什么是比较规则:比较规则是针对某个字符集中的字符比较大小的一种规则。在我们确定了字符集表示字符的范围以及编码规则后,怎么比较两个字符的大小呢?最容易想到的就是直接比较这两个字符对应的二进制编码的原创 2022-01-20 16:16:06 · 619 阅读 · 0 评论 -
聊聊MySQL架构
当我们使用客户端进程向服务器进程发送一段 SQL语句,然后服务器进程处理后会向客户端进程发送一段文本(处理结果),最终将处理结果呈现在我们面前;那么问题来了:MySQL 内部是如何处理的呢?ok,废话不多说,直接来看一个图:下面从连接管理(上图中的连接/线程处理)、解析与优化(上图中的查询缓存、解析器、优化器)、存储引擎三部分来分别解释。连接管理每当有一个客户端进程连接到服务器进程时,服务器进程都会创建一个线程来专门处理与这个客户端的交互,当该客户端退出时会与服务器断开连接,服务器并不会立即把与该原创 2022-01-20 16:15:04 · 183 阅读 · 0 评论 -
sql or
近期做了一个存储过程,执行时发现非常的慢,竟然需要6、7秒!经排查,发现时间主要都耗在了其中一段查询语句上。这个语句用于查出结构相同的两个表中,其中两个字段的任一个字段数据相同的记录。例如,A表的结构如下所示:--会员表CREATE Table Member( MemberID int, --会员ID MemberName varc...转载 2018-12-03 15:52:23 · 135 阅读 · 0 评论