自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Morty的技术乐园

记录为更好的前行

  • 博客(11)
  • 收藏
  • 关注

翻译 MySQL 优化 —— MySQL 如何使用索引

引言本文翻译自MySQL 官网 :How MySQL Uses Indexes,MySQL 版本 5.7 。提升 SELECT 操作性能最好的方式就是在查询的一列或多列上建立索引。索引的行为类似指向表数据的指针,可以让查询能够快速判断哪个记录满足 WHERE 子句中的条件,然后取得这些记录的其他字段的值。所有的 MySQL 数据类型都支持索引。虽然在可能用于查询的所有字段上都建立索引...

2020-01-29 18:15:29 331

原创 MySQL 高级 —— 索引实现的思考

引言最近看了一个公开课,是有关MySQL对索引设计的思考。详细讲解了几种索引实现的设计思考与利弊辨析,讨论了为什么MySQL默认情况下会使用B树索引,B+树索引又对B树做了哪些结构改进。本片博客通过个人的学习理解和总结,由几种简单的索引数据结构,逐渐展开对B+树索引的探究和思考。一、常见的索引实现索引是帮助MySQL 高效获取数据的排好序的数据结构。它可以在几十毫秒,最多几百毫秒内...

2020-01-27 12:33:49 364

翻译 MySQL 优化 —— ORDER BY 优化

引言本文翻译自MySQL 官网:ORDER BY Optimization,MySQL 版本:5.7。这一部分描述了MySQL何时会使用索引来满足order by子句,filesort 操作会在索引不能生效的时候被用到,以及优化器对order by的执行计划信息。order by后面有没有跟着limit,可能会返回不同的记录顺序。一、使用索引来满足 ORDER BY某些情况,M...

2020-01-23 22:01:06 992

翻译 MySQL 优化 —— IS NULL 优化

引言本博客翻译自 MySQL 官网:IS NULL Optimization, MySQL版本 5.7。MySQL 对 IS NULL 的优化MySQL 可以对 IS NULL 执行和常量等值判断(列名= 常量表达式,如name = 'Tom')相同的优化。MySQL 可以利用索引和范围来搜索空值。例如:SELECT * FROM tbl_name WHERE key_co...

2020-01-23 13:12:44 7574

翻译 MySQL 优化 —— WHERE 子句优化

引言本文翻译自 MySQL 官网:WHERE Clause OptimizationWHERE 子句优化这一部分我们来讨论对 WHERE 子句的优化处理。本部分的案例都是以 SELECT 语句为例,但这些优化同样适用于 DELETE 和 UPDATE 语句中的 WHERE 子句。注意因为对 MySQL 优化器的工作一直在进行,因此并不是全部的MySQL执行优化都在本文档中说明...

2020-01-22 20:18:24 949

原创 MySQL 优化 —— SQL优化概述(优化专题开篇词)

引言最近为了研究索引的知识,特地去MySQL 官网研读了一番,发现MySQL官网有比较全面的MySQL优化方案和知识背景,所以希望通过一系列文章,将官网的知识翻译总结一下,避免日后去网上胡乱搜索产生不必要的知识勘误风险。本系列文章标题都会以 “MySQL 优化” 前缀开头,有些可能是翻译,也会有少量自己的总结和试验,针对 MySQL 5.7 版本进行。当然也并不会全部将官网的优化专题翻译完...

2020-01-22 19:11:18 1898

原创 MySQL 高级 —— 复合索引简介(多列索引)

引言复合索引是指包含多个列的索引,单一索引仅包含一列。不论是哪种索引,都旨在加快SQL查询速度。复合索引最多支持16个列(一定不要这么做!),索引是一种有序的数列,复合索引也是如此。相对于单一索引,复合索引有一些必须注意的使用细节,否则很容易造成索引失效,降低查询速度。而要了解这些注意细节,就必须从复合索引的作用方式入手。一、复合索引的作用方式所谓“复合”,那一定是包含有多个,...

2020-01-18 23:15:43 5265 1

原创 MySQL 基础 ————高频函数总结

一、MySQL函数调用方式函数调用的基本语法:SELECT 函数(实参列表) [FROM 表]其中,对于函数,需要重点关注三点:1、函数的名称2、参数列表3、函数功能二、函数的分类在 MySQL中,函数分为两类:1、单行函数;2、分组函数。2.1 单行函数单行函数有 concat、length、ifnull 等。单行函数下还有多种分类。2.1.1...

2020-01-03 16:54:57 987 1

原创 Java 动态代理解析

引言本博客总结自《Java 编程思想》第十四章一、实现第一个动态代理程序代理是软件设计中重要的设计思想,它允许我们在调用实际操作之前或之后解耦式地编写额外的操作,而一旦不需要这些操作了,就可以轻易的移除它们。浏览了《编程思想》中对动态代理的解释,我发现动态代理的实现也是非常简单的。想要实现动态代理,除了要借助于 Java 的运行时类型信息( RTTI :Run-Time Typ...

2020-01-02 23:51:37 326

原创 Linux 实操 —— Linux 系统性能分析

引言最近配合解决压测(性能测试)方面的问题,了解到了一些可以监控 Linux 系统性能指标,如CPU、IO、内存等的工具。此篇博客主要讲解 Linux 系统监控的一些重点内容以及 sar 命令的使用。一、Linux 性能分析聚焦Linux 性能分析的重要参数包括:1、系统整体 cpu 利用率(利用率 >= 50 % 需要注意;>=70% 需要密切关注;>=9...

2020-01-02 14:50:42 610

原创 Java 注解知识总结

引言本博客总结自《Java 编程思想》第 20 章。一、什么是注解注解是 Java 5 引入的一种通过反射机制实现的语法特性,开发者可以通过在类、域、方法等元素前面标记一个“标签”达到对程序的源码、类信息或运行时进行某种说明或处理的效果,尽可能地简化代码,从而使程序开发更高效。但需要注意的是,编译器要确保在其构造路径上,必须有对应注解的定义。Java 中在 1.5 之初内置了三个标...

2020-01-01 14:13:59 285

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除