mysql
文章平均质量分 82
怎么起个名就那么难
这个作者很懒,什么都没留下…
展开
-
Mysql理解MVCC与BufferPool缓存机制
Mysql系列文章目录文章目录Mysql系列文章目录一、MVCC多版本并发控制机制undo日志版本链与read view机制详解Innodb引擎SQL执行的BufferPool缓存机制一、MVCC多版本并发控制机制Mysql在可重复读隔离级别下如何保证事务较高的隔离性,我们上节课给大家演示过,同样的sql查询语句在一个事务里多次执行查询结果相同,就算其它事务对数据有修改也不会影响当前事务sql语句的查询结果。这个隔离性就是靠MVCC(Multi-Version Concurrency Contr原创 2021-04-27 12:15:02 · 162 阅读 · 0 评论 -
Mysql锁机制与事务隔离
Mysql系列文章目录我们的数据库一般都会并发执行多个事务,多个事务可能会并发的对相同的一批数据进行增删改查操作,可能就会导致我们说的脏写、脏读、不可重复读、幻读这些问题。这些问题的本质都是数据库的多事务并发问题,为了解决多事务并发问题,数据库设计了事务隔离机制、锁机制、MVCC多版本并发控制隔离机制,用一整套机制来解决多事务并发问题。接下来,我们会深入讲解这些机制,让大家彻底理解数据库内部的执行原理。文章目录Mysql系列文章目录前言一、事务及其ACID1.并发事务处理带来的问题更新丢失(Lost原创 2021-04-22 16:39:51 · 160 阅读 · 0 评论 -
Mysql索引优化二
Mysql系列文章目录文章目录Mysql系列文章目录一、分页查询优化1、根据自增且连续的主键排序的分页查询2、根据非主键字段排序的分页查询Join关联查询优化1、 嵌套循环连接 Nested-Loop Join(NLJ) 算法2、 基于块的嵌套循环连接 Block Nested-Loop Join(BNL)算法count(*)查询优化一、分页查询优化示例表:CREATE TABLE `employees` ( `id` int(11) NOT NULL AUTO_INCREMENT, `原创 2021-04-22 13:25:09 · 856 阅读 · 4 评论 -
Mysql索引优化一
Mysql系列文章目录我们常常写的sql语句不知道为什么不走索引,接下来咱们谈谈Sql索引优化文章目录Mysql系列文章目录一、Mysql如何选择合适的索引?1.联合索引示例Mysql如何选择合适的索引常见sql深入优化案例1:案例2:案例3:案例4:案例5:案例6:案例7:案例8:优化总结:Using filesort文件排序原理详解索引设计原则一、Mysql如何选择合适的索引?1.联合索引示例建表CREATE TABLE `employees` ( `id` int(11) NOT原创 2021-04-21 15:17:05 · 425 阅读 · 3 评论 -
Mysql删库恢复数据
Mysql系列文章目录我们常常说的一句话,删库跑路,删库是不需要跑路的文章目录Mysql系列文章目录一、bin-log归档一、bin-log归档删库是不需要跑路的,因为我们的SQL执行时,会将sql语句的执行逻辑记录在我们的bin-log当中,什么是bin-log呢?binlog是Server层实现的二进制日志,他会记录我们的cud操作。Binlog有以下几个特点:1、Binlog在MySQL的Server层实现(引擎共用)2、Binlog为逻辑日志,记录的是一条语句的原始逻辑3、Bi原创 2021-04-20 16:40:29 · 140 阅读 · 0 评论 -
SQL在MySQL中是如何执行的
Mysql系列文章目录我们通常执行一条sql,他的底层是如何执行的?执行的顺序文章目录Mysql系列文章目录一、MySQL的内部组件结构Server层Store层连接器查询缓存分析器词法分析器原理优化器执行器提示:下面咱们讲一下SQL在Mysql中如何执行的一、MySQL的内部组件结构大体来说,MySQL 可以分为 Server 层和存储引擎层两部分。Server层主要包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、原创 2021-04-20 14:52:18 · 370 阅读 · 0 评论 -
Mysql-Explain与索引详解
Mysql系列文章目录提示:使用EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句或是结构的性能瓶颈在 select 语句之前增加 explain 关键字,MySQL 会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是执行这条SQL注意:如果 from 中包含子查询,仍会执行该子查询,将结果放入临时表中文章目录Mysql系列文章目录前言一、Explain分析explain中的列二、索引实践1.全值匹配2.最左前缀法则3.不在索引列上做任何操作(计算、函数、(自动or手动)原创 2021-04-20 13:23:45 · 139 阅读 · 0 评论 -
Mysql索引底层数据结构
Mysql系列文章目录提示:mysql是关系型数据库,被好多公司广泛使用提示:索引是帮助MySQL高效获取数据的排好序的数据结构,接下来跟我学习mysql数据库索引吧文章目录Mysql系列文章目录前言一、数据的存储IO Buffer二、MYSQL索引2.1 索引数据结构前言提示:如果有说的不对的地方请批评指正一、数据的存储IO Buffer首先我们想读取文件,是不是需要IO流?Buffer存在一个成本问题,磁盘有磁道和扇区,每个扇区有多少字节?每次扇区有512个字节,如果我们想访问原创 2021-04-19 13:56:42 · 204 阅读 · 2 评论 -
Linux下mysql的彻底卸载
Mysql系列文章目录文章目录Mysql系列文章目录一、查看mysql的安装情况一、查看mysql的安装情况1.查看mysql的安装情况rpm -qa | grep -i mysql2.删除上图安装的软件rpm -ev mysql-community-libs-5.7.27-1.el6.x86_64 --nodeps3.都删除成功之后,查找相关的mysql的文件find / -name mysql4.删除全部文件rm -rf /var/lib/mysqlrm -rf /v原创 2021-04-13 16:48:10 · 109 阅读 · 0 评论 -
MYSQL5.7详细安装步骤
Mysql系列文章目录提示:这里是Mysql的安装文章目录Mysql系列文章目录一、更换yum源(可做可不做)二、安装一、更换yum源(可做可不做)1、打开 mirrors.aliyun.com,选择centos的系统,点击帮助2、执行命令:yum install wget -y3、改变某些文件的名称mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup4、执行更换yum源的命令wg原创 2021-04-13 16:40:06 · 144 阅读 · 0 评论