一个blog表,目前数据大概90多w,短期内可预见的数据量会是200w以内。
一个user表,目前数据大概2000w,短期内可预见数据量在3000w以内。
其中blog表有userid做外键,与user表的主键id关联。同时有manager字段,代表审核状态,分别为0、1、2。预计0的记录非常少,1的记录相对较少,2的比较非常多。createTime 字段为数字型,保存unix时间戳。
而实际查询中的SQL为
FROM blog AS m INNER JOIN user as s ON m.userID = s.ID WHERE m.manager = 2 ORDER BY m.ID DESC
优化的手段包括:
1、使用innodb引擎
2、对blog表做hash分区,分区字段为主键ID
3、对user表做hash分区,分区字段为主键ID
4、查询时加入时间条件限制范围
5、对manager和createTime做联合索引
最终的SQL为:
FROM blog AS m INNER JOIN user as s ON m.userID = s.ID WHERE m.manager = 2 AND m.createTime >= ? AND m.createTime <= ? ORDER BY m.ID DESC LIMIT 0,20
即使如此,涉及的数据量也在20w以内。因此这条SQL会卡死mysql服务。求优化方法。。。
分享到:
相关推荐
18. 限制返回的数据量:使用LIMIT来减少返回给客户端的数据量可以减轻服务器负载,并且提高查询响应速度。 19. 避免使用SELECT *:在只需要部分列时,应当明确指出需要哪些列,减少数据传输的量。 20. 考虑事务的...
MySQL数据库在处理大数据量时,性能优化至关重要。以下是一些关键的优化策略和技术: 1. **连接查询与子查询优化**: - **连接查询**(JOIN):当需要从多个表中获取关联数据时,使用连接查询通常比子查询更有效率...
在数据库管理中,了解MySQL数据量的大小是至关重要的,这有助于优化性能、规划存储空间以及进行容量规划。本文将详细讲解如何统计MySQL数据库的数据量大小,并涉及CONCAT函数的解读,以及对information_schema和...
本文将探讨如何高效地读取和写入大量数据,主要分为三个步骤:解决读取问题、数据处理和数据插入。 ### 第一步:解决读取问题 1. **避免使用重型ORM框架**:如Entity Framework和NHibernate,这些框架在处理大数据...
### MySQL大数据量分页查询方法及其优化 在处理大规模数据集时,MySQL的分页查询是非常常见的需求之一。为了提高查询效率,减少响应时间和资源消耗,开发者需要掌握多种不同的分页查询方法及其优化技巧。本文将详细...
在MySQL中,面对百万级数据量的分页查询,如何高效地进行操作并优化查询性能是数据库管理员和开发人员必须关注的问题。以下是一些常用的方法和优化建议: 1. **直接使用LIMIT语句**:这是最基础的分页查询方式,如`...
根据提供的文件信息,我们可以深入探讨 MySQL 的高级优化查询这一主题,包括其查询缓存原理以及 MySQL 的内部机制等核心知识点。 ### 一、MySQL 查询缓存原理 #### 1.1 什么是查询缓存 查询缓存是 MySQL 中用于...
MySQL索引原理及慢查询优化是数据库管理中的重要主题,尤其是在高并发、大数据量的互联网环境中,优化查询性能对于系统的整体效能至关重要。MySQL作为广泛使用的开源关系型数据库,其索引机制和查询优化技巧是开发者...
下面我们将从查询优化和 SQL 编写注意事项两个方面来讨论 MySQL 千万级数据优化。 查询优化 1. 尽量避免全表扫描,首先应考虑在 WHERE 及 ORDER BY 涉及的列上建立索引。这是因为索引可以帮助 MySQL 快速定位数据...
在这个主题中,我们关注的是如何利用MySQL进行大数据量的测试和优化。提供的压缩包文件包含了一系列的SQL脚本和数据备份,用于创建表格、导入数据并进行性能测试。 首先,`employees.sql` 文件是核心,它包含了创建...
3. 分区表和分片技术可以提高大数据量下的查询性能。 四、存储引擎选择 InnoDB存储引擎支持事务处理和行级锁定,适合并发环境;MyISAM则速度快,但不支持事务,适合读多写少的场景。 五、服务器配置优化 1. 调整...
通过遵循以上技巧,可以显著提升大数据量场景下的MySQL查询性能。记住,每个数据库的使用环境和需求都不同,因此在优化时要结合实际情况进行调整。持续监控查询性能,根据需要调整索引和查询逻辑,是保证数据库高效...
从给定的文件标题、描述、标签以及部分内容中,我们可以提炼出关于MySQL百万级数据优化的关键知识点,这些知识点涵盖了系统架构、硬件选择、文件系统、应用程序接口(API)、查询优化等多个方面,对于处理大规模...
mysql200万+条大数据量测试sql文件,可以用于测试服务器数据库性能,学习sql性能优化和调优。资源是.sql文件压缩后上传。用navicat导入实测用时几分钟时间,数据量200W+条。快速获取百万级真实测试数据。
当涉及到大量数据时,如何有效地使用`IN`子句成为了提高查询性能的关键。本文将详细介绍如何针对`IN`子句进行优化,并通过一个具体的例子来展示其优化过程。 #### 二、`IN`子句的基本概念与应用场景 1. **基本概念...
14. 并不是所有索引对查询都有效,SQL是根据表中数据来进行查询优化的,当索引列有大量数据重复时,SQL查询可能不会去利用索引。 15. 索引并不是越多越好,索引固然可以提高相应的select的效率,但同时也降低了...