mysql没加引号导致全表扫描_mysql隐蔽的索引规则导致数据全表扫描

索引是为了加速数据的检索,但是不合理的表结构或适应不当则会起到反作用。我们在项目中就遇到过类似的问题,两个十万级别的数据表,在做连接查询的时候,查询时间达到了7000多秒还没有查出结果。

首先说明,关联的字段都已经建立了相对应的索引,在执行计划的时候发现另外一张表没有走索引,结果如下图:

具体描述为:Range checked for each record (index map: 0x1); Not exists

优化:

1、当然最直接的想法就是修改两个表的request_id字段的定义,改成相同即可。修改完成后,执行计划还是和没有修改的时候一样

2、由于两张表中的字段类型都是varchar类型的,所以猜测会存在字符集的问题,在Navicat中查看其排序规则不同

3、修改完成后,执行计划

关联查询走了索引,并且查询速度从之前的7000多秒没有查出结果变成了0.25秒出现了结果

结论:

1、表列类型,与where值类型不同会导致全表扫描。

例:phone char(11) select * from table where phone=12345678901;

2、join的两个表的字符编码不同,不能命中索引,会导致笛卡尔积的循环计算(mysql8.0已经做了相关优化,字符集不在影响索引)

以上内容希望帮助到大家,很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家

或 者关注我每天分享技术文章PHP架构师之路​www.zhihu.comb9833c54a42aa31bf03b60b9265d538b.png

来源:https://www.cnblogs.com/tm2015/p/11310451.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/552402.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql 多个密码登录_mysql 多实例登录密码测试

最近在做mysql 多实例的时候,采用不同的方式登录mysql数据库,发现mysql -uroot -p -h 127.0.0.1 -P3308 ,登录时居然不要密码就可以登录,吓得我一身汗,经过检查终于找到原因记录下来,给小白们参考。[rootmy…

redhat5.4 安装mysql_Linux redhat 5.4上安装MYDNS

Linux redhat 5.4上安装MYDNS一、1,MYDNS 的简介:MyDNS是一个UNIX平台下的免费DNS服务器端软件。它被设计成直接从数据库中读取DNS记录软件,并且修改记录后也可时时生效。在MyDNS上,你可随心所欲地增加你自己的次级域名的同时建站…

java的反射机制是什么_JAVA反射机制

一、什么是反射机制 简单的来说,反射机制指的是程序在运行时能够获取自身的信息。在java中,只要给定类的名字,那么就可以通过反射机制来获得类的所有信息。二、哪里用到反射机制 有些时候,我们用过一些知识&#xf…

java unsafe park_Java魔法类——Unsafe应用解析

前言Unsafe是位于sun.misc包下的一个类,主要提供一些用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,这些方法在提升Java运行效率、增强Java语言底层资源操作能力方面起到了很大的作用。但由于Unsafe类使Java…

计算机视觉基础(12)——图像恢复

前言 我们将学习图像恢复相关知识。主要有图像恢复的定义、评价标准和实现图像恢复的方法。图像恢复任务包括图像去噪、去模糊、图像超分辨率、图像修复等;评价标准有峰值信噪比和结构相似性;图像超分辨的方法有传统方法和基于深度学习的方法&#xff1a…

百度编辑器图片上传 java_百度编辑器粘贴图片自动上传到服务器(Java版)

ChromeIE默认支持粘贴剪切板中的图片,但是我要发布的文章存在word里面,图片多达数十张,我总不能一张一张复制吧?Chrome高版本提供了可以将单张图片转换在BASE64字符串的功能。但是无法处理多张图片。而且转换成BASE64后是作为内容…

matlab解方java_Java:调用window的matlab遇到的问题和解决方案

描述容易报错的问题和可能原因1.java.lang.NullPointerException解决途径:window和linux的文件路径不同,window分隔符是\\,linux是/2.Exception in thread “main” java.lang.ExceptionInInitializerError解决途径:matlab生成的j…

java中的输入语句判断正负_在java中使用方法调用统计数组中正数的个数,将判断数据的正负功能定义成方法...

满意答案donglin820推荐于 2018.04.21public class TestDemo {static int count 0;// 统计整数的个数public static void main(String[] args) {int[] number new int[10];// 动态生成一个整数数组(长度为10)Scanner s new Scanner(System.in);for (int i 0; i < 10; i)…

java二级考试有草稿纸吗_“大型考试”为什么需要回收草稿纸?学生:这么多年也没整明白!...

在大家的求学生涯中&#xff0c;肯定不难发现这个事情&#xff0c;那就是学生考完试不能带走草稿纸&#xff0c;尤其是高考、中考这种全国统一大型考试&#xff0c;英语四六级等等&#xff0c;而一些初中高中、大学院校内部期末考试也是这样。学校和考场提供统一草稿纸目的是非…

expressjs如何做mysql注入_Node.js+Express+Mysql 实现增删改查

这次选用nodejsexpressmysql 使用http作为客户端&#xff0c;express框架搭建服务端&#xff0c;从而实现数据的增删改查。这篇文章可以算作上篇文章的升级篇&#xff0c;加入了和数据库的交互。安装node 直接去官网下载选择下载即可https://nodejs.org/en/download/current/cn…

docker pxc mysql_docker安装pxc集群的详细教程

前言现在mysql自建集群方案有多种&#xff0c;keepalived、MHA、PXC、MYSQL主备等&#xff0c;但是目前根据自身情况和条件&#xff0c;选择使用pxc的放来进行搭建&#xff0c;最大的好处就是&#xff0c;多主多备&#xff0c;即主从一体&#xff0c;没有同步延时问题&#xff…

php微信开源框架,SOPHP免费微信开源框架 php版 v4.5

SOPHP是一款稳定开源的微信公众平台开发系统,也是基于weiphp开发的第一款商业系统。依托自身强大的钩子功能&#xff0c;她可以帮助大家快速开发出自己想要的微信功能插件&#xff0c;运营近两年来我们收获了上千用户与良好的口碑。作为一个开源产品&#xff0c;希望大家都能参…

java系统管理员停用,为什么犯错让我成为一个更好的系统管理员

诀窍就是同一个错误不要犯两次。到目前为止&#xff0c;我已做了十多年 Fedora 贡献者。 Fedora 有一个由开发者和用户组成的大型社区&#xff0c;其中每一个人&#xff0c;不管是极富洞察力的用户还是出色的程序员&#xff0c;都有一些独有的技能。我喜欢这样的社区&#xff0…

php ajax json 实例,php+ajax+json 详解及实例代码

phpajaxjson 实例代码html页面&#xff1a;$(function(){$("#send").click(function(){var cont $("input").serialize();$.ajax({url:ab.php,type:post,dataType:json,data:cont,success:function(data){var str data.username data.age data.job;$(&…

php 五颗星评价,简单实现点触/输入值给五颗星评价

先上效果图gif.gif1.码UI。。。UILabel *label [[UILabel alloc] initWithFrame:CGRectMake(0, 0, kScreenWidth, 30)];label.text "点击星星可以自动获取评分哦&#xff5e;";label.textColor [UIColor whiteColor];label.textAlignment NSTextAlignmentCenter;…

oracle1461,Oracle 10.2.0.3的ORA-1461错误

Oracle 10.2.0.3的ORA-1461错误ORA-1461 encountered when generating server alert SMG-3500经研究发现&#xff0c;其是Oracle 10g的一个Bug&#xff0c;并且目前只有Oracle 10.2.0.3会遇到&#xff1a;造成这个错误的原因是由于SMON 进程正在 UPDATE SMON_SCN_TIME表时引发了…

linux uefi无法启动文件,解决UEFI安装无法启动的问题

前言我们产品是支持UEFI安装的&#xff0c;在很多款机器上都正常的安装。今日在浪潮服务器和技嘉服务器上都遇到一次&#xff0c;可以安装&#xff0c;但是无法正常启动。所以我们必须要解决此问题&#xff0c;来支持更多的硬件。基础知识EFI的全称是&#xff0c;Extensible Fi…

如何连接Linux上的服务器 网络编程,Linux 网络编程 一

一、网络编程基础网络编程本身是一门很大的学问&#xff0c;涉及到的东西也很多&#xff0c;尤其是各种协议。先看图&#xff1a;正如上图所示&#xff0c;网络编程中包含五大层面(也有区分六个层面)&#xff0c;从应用层到物理层可以明显看出 越往下越接近计算机硬件。自己并不…

电脑练习打字软件_Type Fu for Mac 4.5.7 共享版 – 优秀的键盘打字练习软件

下载地址&#xff1a;图片中有地址系统兼容性&#xff1a;OS X 10.10或更高版本&#xff0c;64位处理器Type Fu 教您如何在不看键盘的情况下加快打字速度&#xff0c;从而提高您的打字技巧。Type Fu 功能特点&#xff1a;通用。该应用程序适合所有年龄段和技能水平。您可以是初…

access如何保存小数点后_如何把示波器当记录仪用

波形记录仪能长时间的采集信号&#xff0c;并将数据保存到设备的硬盘中&#xff0c;采集的时间长度取决于采样率以及硬盘容量&#xff0c;但和示波器相比&#xff0c;它不具备实时分析的功能&#xff0c;而这正好是示波器的强项。示波器能在长时间采集波形的同时&#xff0c;对…