加载中
mysql索引BTree和B+Tree分析

BTree索引 【初始化介绍】 一颗b树,浅蓝色的块我们称之为一个磁盘块,可以看到每个磁盘块包含几个数据项(深蓝色所示)和指针(黄色所示), 如磁盘块1包含数据项17和35,包含指针P1、P2、P...

2019/07/30 21:27
320
mysql查询分析以及杂项

MySQL的sql_mode合理设置 sql_mode是个很容易被忽视的变量,默认值是空值,在这种设置下是可以允许一些非法操作的,比如允许一些非法数据的插入。在生产环境必须将这个值设置为严格模式,所以...

2019/07/30 20:54
30
Mysql 的用户与权限管理

mysql5.7 centos7.2安装点击 创建用户 create user zhang3 identified by '123123'; 表示创建名称为zhang3的用户,密码设为123123; 查看用户 select host,user,authentication_string,selec...

2019/07/30 20:43
131
小表驱动大表(MySQL高级知识十六)

前言:本来小表驱动大表的知识应该在前面就讲解的,但是由于之前并没有学习数据批量插入,因此将其放在这里。在查询的优化中永远小表驱动大表。 1.为什么要小表驱动大表呢 类似循环嵌套 for(...

2019/08/08 10:14
1.4K
主从复制(MySQL高级知识十五)

前言:本章主要讲解MySQL主从复制的操作步骤。由于环境限制,主机使用Windows环境,从机使用用Linux环境。另外MySQL的版本最好一致,笔者采用的MySQL5.7.22版本,具体安装过程请查询相关资料...

2019/08/08 10:10
112
行锁(MySQL高级知识十四)

前言:前面学习了表锁的相关知识,本篇主要介绍行锁的相关知识。行锁偏向InnoDB存储引擎,开销大,加锁慢,会出现死锁,锁定粒度小,发生锁冲突的概率低,但并发度高。 0.准备 #1.创建相关测...

2019/08/08 10:07
38
表锁(MySQL高级知识十三)

前言:锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算机资源(如CPU、RAM、I/O等)的争用外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一...

2019/08/08 09:56
152
全局查询日志(MySQL高级知识十二)

前言:全局查询日志用于保存所有的sql执行记录,该功能主要用于测试环境,在生产环境中永远不要开启该功能。 1.如何开启 #1.通过my.cnf配置开启该功能。 注:对my.cnf文件配置后,需重启mys...

2019/08/08 09:55
187
Show Profile(MySQL高级知识十一)

前言:Show Profile是mysql提供的可以用来分析当前会话中sql语句执行的资源消耗情况的工具,可用于sql调优的测量。默认情况下处于关闭状态,并保存最近15次的运行结果。 1.分析步骤 #1.开启S...

2019/08/07 21:30
62
批量插入数据脚本(MySQL高级知识十)

前言:使用脚本进行大数据量的批量插入,对特定情况下测试数据集的建立非常有用。 0.准备 #1.创建tb_dept_bigdata(部门表)。 create table tb_dept_bigdata( id int unsigned primary key ...

2019/08/01 14:51
77
慢查询日志(MySQL高级知识九)

前言:慢查询日志是MySQL提供的一种日志记录,它记录MySQL中响应时间超过阈值的语句,具体指运行时间超过long_query_time值的sql语句,该sql语句会被记录到慢查询日志中。慢查询日志主要与e...

2019/08/01 14:49
17
ORDER BY优化(MySQL高级知识八)

前言:在使用order by时,经常出现Using filesort,因此对于此类sql语句需尽力优化,使其尽量使用Using index。 0.准备 #1.创建test表。 drop table if exists test; create table test( id...

2019/08/01 14:45
33
索引面试题分析(MySQL高级知识七)

前言:该篇随笔通过一些案例,对索引相关的面试题进行分析。 0.准备 #1.创建test表(测试表)。 drop table if exists test; create table test( id int primary key auto_increment, c1 va...

2019/08/01 14:36
50
索引优化(MySQL高级知识六)

前言:索引优化的目的主要是让索引不失效,本篇通过相关案例对索引优化进行讲解。 0.准备 创建经典的tb_emp表。 DROP TABLE IF EXISTS `tb_emp`; CREATE TABLE `tb_emp` ( `id` int(11) NOT ...

2019/08/01 14:30
15
索引分析(MySQL高级知识五)

前言:前面已经学习了explain(执行计划)的相关知识,这里利用explain对索引进行优化分析。 0.准备 首先创建三张表:tb_emp(职工表)、tb_dept(部门表)和tb_desc(描述表) 1)tb_emp表。 DROP T...

2019/08/01 14:03
35
Explain(MySQL高级知识四)

前言:explain(执行计划),使用explain关键字可以模拟优化器执行sql查询语句,从而知道MySQL是如何处理sql语句。explain主要用于分析查询语句或表结构的性能瓶颈。 注:本系列随笔如无特殊...

2019/08/01 11:59
29
索引(MySQL高级知识三)

前言:索引在sql调优部分占据着重要的位置,了解并深入索引对我们来说也是非常重要的。本篇主要介绍MySQL中索引的相关知识点。 1.索引是什么 MySQL官方对索引的定义:索引(Index)是帮助MyS...

2019/08/01 11:44
13
JOIN查询的7种方式(mysql高级二)

前言:该篇主要对MySQL中join语句的七种情况进行总结。 0.准备 join主要根据两表或多表之间列的关系,从这些表中进行数据的查询。 首先创建两张表:tb_emp(员工表)和tb_dept(部门表),并插入...

2019/08/01 11:33
53
基础(mysql高级一)

1.关于MySQL的一些文件 MySQL如何安装、如何配置自启动,这里不进行讲述,可自行搜索相关安装教程进行处理。这里主要介绍MySQL的主要配置文件。 ①二进制日志log-bin:用于主从复制。 ②错误...

2019/08/01 11:29
32
MySQL 千万 级数据量根据(索引)优化 查询 速度

一、索引的作用 索引通俗来讲就相当于书的目录,当我们根据条件查询的时候,没有索引,便需要全表扫描,数据量少还可以,一旦数据量超过百万甚至千万,一条查询sql执行往往需要几十秒甚至更多...

2019/07/30 23:32
320

没有更多内容

加载失败,请刷新页面

返回顶部
顶部