
mysql
isevena、
向外行走,向内认知
展开
-
Linux CentOS7 下安装 Mysql5.7 并设置自启动
安装软件:mysql5.7 说明:使用官方编译好的二进制文件进行安装 1.检查操作系统是否自带mysql [root@localhost local]# rpm -qa|grep mysql mysql-libs-5.1.73-8.el6_8.x86_64 比如我这里自带了一个mysql。 使用yum命令,因为yum命令可以自动删除与mysql相关的依赖;如果使用rpm命令,则还需要手...原创 2019-09-12 17:16:08 · 3610 阅读 · 0 评论 -
Mysql 深入浅出索引(下)
在上一篇文章中,我和你介绍了 InnoDB 索引的数据结构模型,今天我们再继续聊聊跟 MySQL 索引有关的概念。 在开始这篇文章之前,我们先来看一下这个问题: 在下面这个表 T 中,如果我执行 select * from T where k between 3 and 5,需要执行几次树的搜索操作,会扫描多少行? 下面是这个表的初始化语句。 mysql> create table...转载 2019-08-16 08:39:37 · 125 阅读 · 0 评论 -
Mysql 深入浅出索引(上)
提到数据库索引,我想你并不陌生,在日常工作中会经常接触到。比如某一个 SQL 查询比较慢,分析完原因之后,你可能就会说“给某个字段加个索引吧”之类的解决方案。但到底什么是索引,索引又是如何工作的呢?今天就让我们一起来聊聊这个话题吧。 数据库索引的内容比较多,我分成了上下两篇文章。索引是数据库系统里面最重要的概念之一,所以我希望你能够耐心看完。在后面的实战文章中,我也会经常引用这两篇文章中提到的知...原创 2019-08-16 08:39:07 · 113 阅读 · 0 评论 -
Mysql事务隔离:为什么你改了我还看不见?
提到事务,你肯定不陌生,和数据库打交道的时候,我们总是会用到事务。最经典的例子就是转账,你要给朋友小王转 100 块钱,而此时你的银行卡只有 100 块钱。 转账过程具体到程序里会有一系列的操作,比如查询余额、做加减法、更新余额等,这些操作必须保证是一体的,不然等程序查完之后,还没做减法之前,你这 100 块钱,完全可以借着这个时间差再查一次,然后再给另外一个朋友转账,如果银行这么整,不就乱了么...原创 2019-08-16 08:38:30 · 129 阅读 · 0 评论 -
Mysql全局锁和表锁
MySQL 的锁 数据库锁设计的初衷是处理并发问题。作为多用户共享的资源,当出现并发访问的时候,数据库需要合理地控制资源的访问规则。而锁就是用来实现这些访问规则的重要数据结构。 根据加锁的范围,MySQL 里面的锁大致可以分成全局锁、表级锁和行锁三类。今天这篇文章,我会和你分享全局锁和表级锁。而关于行锁的内容,我会留着在下一篇文章中再和你详细介绍。 这里需要说明的是,锁的设计比较复杂,这两篇...原创 2019-08-15 19:43:35 · 151 阅读 · 0 评论 -
Mysql日志系统:一条SQL更新语句是如何执行的?
上一篇文章了解了一个查询语句的执行流程,并介绍了执行过程中涉及的处理模块。一条查询语句的执行过程一般是经过连接器、分析器、优化器、执行器等功能模块,最后到达存储引擎。 那么,一条更新语句的执行流程又是怎样的呢?MySQL 可以恢复到半个月内任意一秒的状态,这是怎样做到的呢? 下面是这个表的创建语句,这个表有一个主键 ID 和一个整型字段 c: mysql> create table T...原创 2019-08-15 19:43:12 · 213 阅读 · 0 评论 -
Mysql基础架构 一条SQL查询语句是如何执行的?
在执行下面这个查询语句时: mysql> select * from T where ID=10; 我们看到的只是输入一条语句,返回一个结果,却不知道这条语句在MySQL 内部的执行过程。 下面我给出的是 MySQL 的基本架构示意图,可以清楚地看到 SQL 语句在 MySQL 的各个功能模块中的执行过程。 ...转载 2019-08-15 19:42:02 · 165 阅读 · 0 评论 -
MySQL的Query Cache原理分析
QueryCache(下面简称QC)是根据SQL语句来cache的。一个SQL查询如果以select开头,那么MySQL服务器将尝试对其使用QC。每个Cache都是以SQL文本作为key来存的。 原理 QueryCache(下面简称QC)是根据SQL语句来cache的。一个SQL查询如果以select开头,那么MySQL服务器将尝试对其使用QC。每个Cache都是以SQL文本作为key来存的。...原创 2019-07-29 16:28:12 · 156 阅读 · 0 评论 -
MySQL查询优化器工作原理解析
手册上查询优化器概述 查询优化器的任务是发现执行SQL查询的最佳方案。大多数查询优化器,包括MySQL的查询优化器,总或多或少地在所有可能的查询评估方案中搜索最佳方案。对于联接查询,MySQL优化器所调查的可能的方案数随查询中所引用的表的数目呈指数增长。对于小数量的表(典型小于7-10),这不是一个问题。然而,当提交的查询更大时,查询优化所花的时间会很容易地成为服务器性能的主要瓶颈。 查询优化...转载 2019-07-29 16:26:57 · 157 阅读 · 0 评论