广告
返回顶部
首页 > 资讯 > 数据库 >MYSQL中1000万条数据你是怎么查询的,查询非常慢怎么优化
  • 148
分享到

MYSQL中1000万条数据你是怎么查询的,查询非常慢怎么优化

mysql数据库sql 2023-09-04 11:09:00 148人浏览 独家记忆
摘要

select count(*) from user_login_log;select * from user_login_log limit 10000,100;select * from user_login

select count(*) from user_login_log;select * from user_login_log limit 10000,100;select * from user_login_log limit 10000,1000;select * from user_login_log limit 10000,10000;select * from user_login_log limit 10000,100000;select * from user_login_log limit 10000,1000000;

 数据量越大,花费时间越长

select * from user_login_log limit 100,100;select * from user_login_log limit 1000,100;select * from user_login_log limit 10000,100;select * from user_login_log limit 100000,100;select * from user_login_log limit 1000000,100;

 

偏移量越大,花费时间越长(浅层分页到深层分页)

sql优化

1.Mysql自身

2.网络io

3.SQL自身

--原SQL

select * from user_login_log limit 10000,100000;

--避免使用select *

select user_id,ip,sttr1,attr2,attr3,attr4,attr5,attr6,attr7,attr8,attr9,attr10 from user_login_log limit 10000,100000;

 全表扫描,查询效率慢

--按需查找字段

select id from user_login_log limit 10000,100000;

explainselect id from user_login_log limit 10000,100000;

 

 使用索引扫描,主键索引,进行提升

select user_id from user_login_log limit 10000,100000;

--覆盖索引

alter table user_login_log add index idx_user_id(user_id);select user_id from user_login_log limit 10000,100000;

查询字段索引覆盖,通过辅助索引提升查询效率

针对数据量大的情况,我们可以做如下优化:

按需查询字段,减少网络IO消耗

避免使用select *,减少mysql优化器负担

查询的字段尽量保证索引覆盖

借助NoSQL缓存数据缓解MySQL数据库的压力

select * from user_login_log limit 1000000,100;

--增加索引where条件,缩减数据范围

select * from user_login_log where id> 1000000 limit 100;

 

偏移量大的场景,我们可以使用数据量大的优化方案,除此之外还可以将偏移量改为使用id限定的方式提升查询效率

针对偏移量大的情况,我们可以做如下优化:

添加where条件缩减条数,然后limit关键再进行数据筛选

 

来源地址:https://blog.csdn.net/m0_45312259/article/details/130841925

您可能感兴趣的文档:

--结束END--

本文标题: MYSQL中1000万条数据你是怎么查询的,查询非常慢怎么优化

本文链接: https://www.lsjlt.com/news/393497.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MYSQL中1000万条数据你是怎么查询的,查询非常慢怎么优化
    select count(*) from user_login_log;select * from user_login_log limit 10000,100;select * from user_login...
    99+
    2023-09-04
    mysql 数据库 sql
  • Mysql中一千万条数据怎么快速查询
    目录普通分页查询如何优化偏移量大采用id限定方式优化数据量大问题普通分页查询 当我们在日常工作中遇到大数据查询的时候,第一反应就是使用分页查询。 mysql支持limit语句来选取...
    99+
    2022-11-12
  • 怎么在mysql中优化百万级数据表的查询
    怎么在mysql中优化百万级数据表的查询?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.两种查询引擎查询速度(myIsam 引擎 )InnoDB 中不保存表的...
    99+
    2023-06-15
  • 怎么样优化mysql千万级数据分页查询性能
    本文主要给大家简单讲讲怎么样优化mysql千万级数据分页查询性能,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望怎么样优化mysql千万级数据分页查询性能这篇...
    99+
    2022-10-18
  • php怎么查询MySQL的8条数据
    PHP是一款非常流行并且实用的编程语言,它可以用于各种不同的项目,从简单Java应用程序到大型Web应用程序。对于许多网站工程师来说,查询数据库中的数据是一个基本的需求,这可以使我们更好地了解网站上的用户行为,以及优化网站的性能。在本文中,...
    99+
    2023-05-14
    php mysql
  • MySQL数据库中怎么优化索引查询
    这篇文章给大家介绍MySQL数据库中怎么优化索引查询,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。问题描述:我们要访问的表是一个非常大的表,四千万条记录,id是主键,program_i...
    99+
    2022-10-18
  • MySQL 大数据in查询该怎么优化
    对于 MySQL 中的大数据 IN 查询,可以使用以下方法进行优化: 尽可能使用索引。如果使用 IN 操作符的字段有索引,MySQL 将会使用索引来加速查询。 尽量使用常量作为 IN 操作符中的参数,而不是使用子查询或者表达式。因为 M...
    99+
    2023-09-16
    mysql 大数据 数据库
  • Server数据库中怎么优化查询
    Server数据库中怎么优化查询,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。  Server数据库查询优化方法有哪些  1.尽量不要使用...
    99+
    2022-10-18
  • mysql千万级别的数据使用count(*)查询比较慢怎么解决?
    当MySQL中的数据量达到千万级别时,使用COUNT()查询可能会变得比较慢。这是因为COUNT()会扫描整个表并计算匹配的行数,对于大表来说,这个过程可能会非常耗时。 在上图中查询一千三百多万...
    99+
    2023-09-24
    mysql 数据库 mysql千万级别数据
  • MySQL中的查询优化器怎么用
    本篇内容主要讲解“MySQL中的查询优化器怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL中的查询优化器怎么用”吧!对于一个SQL语句,查询优化器...
    99+
    2022-10-19
  • 怎么在一个千万级的数据库查询中提高查询的效率
    小编给大家分享一下怎么在一个千万级的数据库查询中提高查询的效率,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在实际项目中,当数据...
    99+
    2022-10-18
  • MySql怎么查询符合条件的最新数据行
    这篇“MySql怎么查询符合条件的最新数据行”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“MySql怎么查询符合条件的最新数...
    99+
    2023-07-02
  • MySQL中Like模糊查询速度太慢该怎么进行优化
    这篇文章主要介绍MySQL中Like模糊查询速度太慢该怎么进行优化,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!第一个思路建索引like %keyword 索引失效,使用全表扫描。like keyword% 索引有效...
    99+
    2023-06-22
  • php怎么查询mysql中的数据数量
    在开发 Web 程序时,经常需要查询数据库的数据数量。PHP 是一种常用的开发语言,能够方便地与 MySQL 数据库进行交互,实现数据的增加、修改、删除等功能。本文将介绍如何使用 PHP 查询 MySQL 数据库中的数据数量。一、连接 My...
    99+
    2023-05-14
    mysql php
  • 怎么在mysql中根据索引优化查询速度
    这篇文章将为大家详细讲解有关怎么在mysql中根据索引优化查询速度,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。(一)索引的作用索引通俗来讲就相当于书的目录,当我们根据条件查询的时候,没有索...
    99+
    2023-06-14
  • mysql怎么查询数据库中的表名
    本篇内容介绍了“mysql怎么查询数据库中的表名”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!查询数据库中...
    99+
    2023-01-30
    mysql 数据库
  • mysql怎么查询表中的数据库名
    mysql查询表中的数据库名的语法:“show databases”;mysql查询表中的数据库名的方法:查询所有数据库,sql语句为:“show databases;”查询指定数据库中所有表名,sql语句为:select&nbs...
    99+
    2022-10-23
  • 怎么在mysql中查询最近的数据
    在mysql中查询最近数据的方法:1.启动mysql;2.登录mysql数据库;3.进入数据表;4.执行SELECT * FROM语句查询;具体步骤如下:首先,在命令行中启动mysql服务;service mysql start  ...
    99+
    2022-10-18
  • MySQL中怎么查询不重复的数据
    这篇文章主要介绍了MySQL中怎么查询不重复的数据的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySQL中怎么查询不重复的数据文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2023-04-28
    mysql
  • Mysql中怎么进行优化器对子查询的处理
    本篇文章给大家分享的是有关Mysql中怎么进行优化器对子查询的处理,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。根据子查询的类型和位置不同,m...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作