文章 35
评论 9
浏览 13798
如何避免MySQL索引失效与三个优化实例

如何避免MySQL索引失效与三个优化实例

应该如何正确的使用索引?如何避免索引失效?单表、两表和三表如何优化?其实总结一下就是这样:最好是查找的值都是建立索引的字段,要遵守最佳左前缀匹配法则,第一个索引没用上其他的都用不上,中间的索引没用上后面的也用不上。索引字段不要函数计算、自动或手动的类型转换。凡是在范围条件之后的索引全部失效,like的百分号写在最后边,实在是需要两边都是百分号那么建立索引,并且别查找其他非索引字段,也就是尽量别写select * 。尽量不使用不等于、大于、小于等条件,尽量不要使用or进行连接,否则会导致索引失效。对于varchar类型的字段不要忘记写引号,避免发生隐式类型转换。

MySQL性能分析

MySQL性能分析

Explain是什么?Explain又能干啥?Explain是分析SQL执行过程的重要工具,通过explain得到的是我们如何理解的SQL语句与MySQL理解的SQL语句的区别在哪里,表的读取顺序数据读取操作的操作类型?哪些索引可以使用?哪些索引被实际使用?表之间的引用关系是怎么样的?每张表有多少行被优化器查询?这些信息都是来自explain,explain是性能分析不可缺少的工具!

MySQL配置与存储引擎介绍

MySQL配置与存储引擎介绍

查询语句优化、主从复制、软硬件升级、容灾备份、SQL编程之类的东西。不过接下来学到的呢只是作为一个后台Java开发者应该掌握的知识,很完整的SQL优化需要很深的功底,大公司甚至有专门的DBA写上面这些东西,从IT时代到互联网时代,不断增长的是数据,所以学习一下MySQL优化还是很重要的!

基于Docker的MySQL主从复制

基于Docker的MySQL主从复制

主机的数据发生更改的时候会产生一个BinaryLog文件,然后从机的IO线程会去取这个二进制文件,取回来之后会将主机的BinaryLog拷贝到中继日志中,SQL线程直接通过中继日志来改变自身的数据。那么说到这里可能很多人会有疑问,不是说主机用来写,从机用来读吗?为啥还是需要从机的写操作,事实上这并不是写操作,而且直接修改数据的操作,举一个很简单的例子,如果是普通的修改数据,会首先找到要修改的数据的二进制位置,这样才能发生更改,如果直接告诉你在哪个位置要修改成什么数据,会不会更快呢?

Docker常用安装与镜像发布

Docker常用安装与镜像发布

使用Docker安装MySQL、Redis、Jenkins、CentOS...都是很容易的。如果需要把镜像备份到云端,直接使用阿里云备份即可,在分布式集群安装软件的时候就可以直接使用阿里云备份的镜像,方便快捷!

DockerFile快速构建自定义镜像

DockerFile快速构建自定义镜像

Dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本,这就比如Linux环境编程下的makefile,或者是Maven的pom文件,用DockerFile来自定义镜像是必须掌握的!

Docker镜像与数据容器卷

Docker镜像与数据容器卷

理解Docker镜像的分层结构,Docker镜像如何想Git一样Commit?容器与宿主机之间的数据共享:通过容局数据卷来完成,两个新建数据卷的方式,一是使用-v命令,二是使用Dockerfile,通过继承容器数据卷的方式可以实现多容器共享数据!

Docker底层原理与命令详解

Docker底层原理与命令详解

学会使用Docker肯定会事半功倍,这篇文章介绍了Docker的底层原理,从底层出发学习如何使用Docker这个容器,Docker常用命令详解也在里面!

Docker简介与安装

Docker简介与安装

一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不同版本环境的兼容,对运维人员都是考验 Docker之所以发展如此迅速,也是因为它对此给出了一个标准化的解决方案。

彻底解决ADB连接问题

彻底解决ADB连接问题

在开发中常常遇到ADB连接不上手机,甚至不能连接模拟器,此文帮助你彻底解决ADB连接问题!

始于技术 不止于技术