Tod4の |

Tod4

园龄:2年11个月粉丝:21关注:0

合集-MySQL高级

MySQL(一)Linux下MySQL的安装
摘要:Linux下MySQL的安装 1 MySQL的安装 1.1 Linux系统以及工具的准备 这里使用两台CentOS7虚拟机,一台安装8.0版本,另一台克隆的虚拟机安装5.7版本 克隆的虚拟机需要进行配置修改: mac地址 主机名 cd /etc/hostname hadoop101 ip地址 vim
92
0
0
MySQL(二)字符集、比较规则与规范
摘要:1 字符集的相关操作 MySQL8.0之前的版本,默认字符集为latin1,8.0及之后默认为utfmb3、utfmb4,如果以前的版本忘记修改默认的密码,就会出现乱码的问题。 1.1 修改步骤 修改mysql字符集配置 查看mysql的字符集编码 mysql> show variables lik
150
0
1
MySQL(三)数据目录
摘要:Mysql的主要目录结构 find / -name mysql 1 数据库文件的存放路径 /var/lib/mysql/ MySQL服务器程序会在启动的时候去文件系统下的某个目录加载一些文件,之后在运行过程中产生的数据也会存储到这个目录下的某个文件中,这个目录就称为数据目录。 可以通过命令查看当前数
82
0
0
MySQL(四)用户与权限管理
摘要:用户与权限管理 :bust_in_silhouette:用户管理 MySQL用户分为普通用户和root用户,提供了许多语句来管理包括登录、退出MySQL服务器、创建用户、删除用户、密码管理和权限管理等内容。 :sailboat:登录MySQL服务器 mysql -h hostName|hostIP
109
0
0
MySQL(五)配置文件、系统变量与MySQL架构
摘要:#### 1 配置文件的使用 ##### my.cnf配置文件 /etc/my.cnf: ```bash [root@hadoop103 ~]# cat /etc/my.cnf # For advice on how to change settings please see # http://de
64
0
0
MySQL(六)存储引擎
摘要:存储引擎 ​ 连接管理、查询缓存、解析器和执行器被归为MySQL service,而把真实存储数据的功能划分为存储引擎的功能。所以MySQL service经过查询优化后,只需按照生成的执行计划调用存储引擎的API获取数据,然后返回给客户端即可。存储引擎本质就是表的类型,功能是接收上层传来的指令,然
67
0
0
MySQL(七)索引
摘要:索引的数据结构 1 为什么使用索引 索引概述 索引(Index)是帮助MySQL高效获取数据的数据结构。是“排好序的快速查找结构”,满足特定的查找算法 索引是在存储引擎中实现的,每种存储引擎的索引不一定完全相同,每种存储引擎也不一定支持所有的索引 存储引擎可以定义每个表的最大索引数和最大索引长度 所
90
0
0
MySQL(八)哈希索引、AVL树、B树与B+树的比较
摘要:#### Hash索引 ##### 简介 ​ **这部分略了** ##### Hash索引效率高,为什么还要设计索引结构为树形结构? - Hash索引仅能满足 **=、和IN查询**,如果进行`范围查询`,哈希的索引会退化成O(n);而树型的有序特性,仍然能够保持O(log2n)的效率 - Hash
168
4
0
MySQL(九)InnoDB行格式
摘要:#### InnoDB行格式 ##### 查看默认行格式: ```sql select @@innodb_default_row_format; ``` ##### 查看数据库表使用的行格式 ```sql mysql> use atguigudb; Reading table information
119
0
0
MySQL(九)InnoDB数据结构
摘要:### InnoDB数据结构 #### 1 数据库的存储结构:页 ​ 索引信息和数据记录都是保存在文件上的,确切来说是保存在`页结构`中;另一方面,**索引是在存储引擎上实现的**,MySQL服务器上的存储引擎负责对表中数据的读取和写入工作。不同的存储引擎的`存放格式`是不同的,比如Memory甚至
124
0
0
MySQL(十)表空间结构:区、段与碎片区
摘要:### 表空间结构:区、段与碎片区 #### 为什么要有区? ​ B+树中的每一层的页都会形成一个双向链表,双向链表之间的物理位置可能会离得非常远,当遇到范围查询的适用场景的时候,就会定位到最左边和最右边的记录,然后沿着双向链表一直扫描,而如果这其中的两个页面物理上离得特别远,就会成为`随机I/O`
383
0
1
MySQL(十一)索引的分类和创建原则
摘要:### 索引的创建与设计原则 #### 1 索引的声明与使用 ##### 1.1 索引的分类 ​ MySQL索引包括`普通索引`、`唯一性索引`、`全文索引`、`单列索引`、`多列索引`和`空间索引` - 按照逻辑结构划分,主要有四种:`普通索引`、`唯一性索引`、`主键索引`和`全文索引` - 按
171
0
0
MySQL(十二)索引使用的情况分析
摘要:### 索引使用的情况分析 #### 数据准备 - 创建表student_info、course ```sql CREATE TABLE `student_info` ( `id` int NOT NULL AUTO_INCREMENT, `student_id` int NOT NULL, `na
96
0
0
MySQL(十三)MySQL性能分析工具:慢查询日志与PROFILE查询成本
摘要:#### 性能分析工具SLOW QUERY LOG、PROFILE的使用 ​ 数据库调优的目标就是`响应速度更快,吞吐量更大`。利用宏观的监控工具和微观的日志分析可以帮助我们找到调优的思路和方式。 #### :star2: 数据库调优的步骤 ​ 整个流程分为了`观察(Show Status)`和`行
227
0
0
MySQL(十四)分析查询语句Explain 七千字总结
摘要:### 分析查询语句:EXPLAIN #### 1概述 ​ **定位了查询慢的SQL之后,就可以使用EXPLAIN或者DESCRIBE工具做针对性的分析查询**。两者使用方法相同,并且分析结果也是相同的。 ​ MySQL中有专门负责SQL语句优化的优化器模块,主要功能是计算分析系统中收集到的统计信息
375
0
2
MySQL(十五)分析优化器的查询计划:Trace
摘要:#### 1 MySQL(十五)分析优化器的查询计划:Trace ​ `OPTIMIZER_TRACE`是mysql 5.6引入的一项追踪功能,它可以追踪优化器做出的各种决策(比如访问表的方法、各种开销计算和各种转换等等),并将结果记录到表`INFORMATION_SCHEMA.OPTIMIZER_
124
0
0
MySQL(十六)索引优化:索引失效的情况分析
摘要:### 索引优化 有哪些维度可以进行数据库调优? - 索引失效,没有充分利用到索引 建立索引 - 关联查询join太多(设计缺陷或不得已的需求) SQL优化 - 服务器调优及各个参数的设计(缓冲、线程池等) 调整my.cnf - 数据过多,SQL优化也到达了极限 分库分表 SQL查询优化可以分为`物
104
1
1
MySQL(十七)查询优化(一)
摘要:### 查询优化(一) #### 1 关联查询优化 ##### 数据准备 ```sql CREATE TABLE `type` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `card` INT(10) UNSIGNED NOT NULL, PRI
76
0
0
MySQL(十七)查询优化(二)与数据库主键设计
摘要:### 查询优化(二) #### 1 覆盖索引 ##### 什么是覆盖索引 ​ 看下面的例子,对于联合索引age_sno_name,当查询字段较少时能够使用索引,而字段较多的时候只能进行文件排序,这是由优化器判断通过**索引加回表**或者**直接文件排序**的成本来决定的。**这种一个索引包含了满足
73
0
0
MySQL(十八)MySQL事务(一):事务的概述与使用
摘要:### MySQL事务(一):事务的概述与使用 #### 1 数据库事务概述 ​ **事务是数据库区别于文件系统的重要特性之一**,当我们有了事务就会让数据库始终保持`一致性`,同时我们还能通过事务的机制`恢复到某个时间点`,这样可以保证已提交到数据库的修改不会因为系统崩溃而丢失。 ##### 1.
82
0
0
   
点击右上角即可分享
微信分享提示
深色
回顶
收起