下面就笔者工作中遇到的时间问题,模拟一下情况对大家进行介绍.
工作中仍然是海量数据出现的情况.每年大概会有几亿条记录.而且数据的时效性比较强.但历史数据仍然要求保留.这个时候经过分析和研究,最终决定通过时间字段进行分区.下面是分区表的创建代码.读者门在插入了不同年份时间段以后,可以时间字段为条件进行查询,可以看到数据库扫描过的区段.
CREATE TABLE part_data
(c1 int default NULL,
c2 varchar(30) default NULL,
c3 date default NULL)
partition by range (to_days(c3))
(PARTITION p0 VALUES LESS THAN (to_days('1995-01-01')),
PARTITION p1 VALUES LESS THAN (to_days('1996-01-01')) ,
PARTITION p2 VALUES LESS THAN (to_days('1997-01-01')) ,
PARTITION p3 VALUES LESS THAN (to_days('1998-01-01')) ,
PARTITION p4 VALUES LESS THAN (to_days('1999-01-01')) ,
PARTITION p5 VALUES LESS THAN (to_days('2000-01-01')) ,
PARTITION p6 VALUES LESS THAN (to_days('2001-01-01')) ,
PARTITION p7 VALUES LESS THAN (to_days('2002-01-01')) ,
PARTITION p8 VALUES LESS THAN (to_days('2003-01-01')) ,
PARTITION p9 VALUES LESS THAN (to_days('2004-01-01')) ,
PARTITION p10 VALUES LESS THAN (to_days('2010-01-01')),
PARTITION p11 VALUES LESS THAN MAXVALUE );
分区查询,可以查看扫描过的区段.当然要加上where子句,以c3时间为条件进行检索.若不使用时间字段,分区将失去作用.
explain partitions select * from part_data\G
分享到:
相关推荐
在本案例中,我们有两个不同平台的安装包:一个是针对Windows操作系统的“mysql-8.0.28-winx64.zip”,另一个是用于Linux(特别是基于Red Hat Enterprise Linux 7)的“mysql80-community-release-el7-5.noarch”。...
- **下载**: 首先,你需要从官方网站或可信的源下载适用于Windows的MySQL 5.5安装包,即“mysql5-mysql-5.5.zip”。 - **解压**: 解压缩下载的文件,得到安装文件。 - **运行安装向导**: 双击setup.exe开始安装...
5. 兼容MySQL服务器的新特性:如支持分区表、存储过程、触发器等。 使用"mysql-connector-java-5.1.37.jar"的步骤通常如下: 1. 将JAR文件添加到Java项目的类路径中,可以是构建工具(如Maven或Gradle)的依赖,也...
本文将深入探讨这两个文件:"mysql-connector-java-5.1.40.zip" 和 "mysql-connector-java-5.1.10.jar",以及它们在Java开发中的作用。 首先,`mysql-connector-java-5.1.40.zip` 是一个压缩文件,包含了MySQL ...
2. **自动完成和提示**:在Shell中,用户可以享受到自动补全和语法提示功能,极大地提高了编写查询和脚本的效率。 3. **图形化用户界面(GUI)**:虽然MySQL Shell主要是命令行工具,但也可以通过JavaScript API...
MySQL是世界上最流行的开源关系型数据库管理系统之一,而`mysql-connector-java`是MySQL官方提供的用于Java应用程序连接到MySQL服务器的驱动程序。`mysql-connector-java-5.1.27.jar`是这个驱动的一个特定版本,它...
此外,它还支持MySQL的特性,如SSL连接、分区表、复制和负载均衡。 总结来说,"mysql-connector-j-8.0.31"是Java开发者连接MySQL数据库的关键组件,通过理解JDBC机制和有效使用这个驱动,可以实现高效、安全的...
MySQL Cluster是一种高可用性、高性能的数据库解决方案,它在MySQL服务器的基础上增加了分布式数据存储和实时事务处理的能力。在“mysql-cluster-8.0.20-winx64.zip”这个压缩包中,我们找到了MySQL Cluster的...
6. **分区表改进**:分区表是大型数据库中常见的优化手段,新的版本可能扩展了分区策略,提升了处理大数据集的能力。 7. **通用表表达式(Common Table Expressions, CTE)**:这是一类临时结果集,可以用于复杂...
- 分区表改进:支持更多的分区类型和操作,例如在线重定义分区。 - 自动化备份和恢复工具:MySQL Enterprise Backup 提供了自动化和灵活的备份选项,简化了数据保护流程。 在开发和学习环境中,MySQL 8.0 提供了一...
6. **分区表优化**:对分区表的处理有了显著的提升,包括更灵活的分区策略和更高效的分区删除。 7. **安全性和认证**:5.7版本增强了安全特性,比如支持更强大的加密算法,改进了认证插件,如引入了caching_sha2_...
这个安装包(mysql-for-visualstudio-1.2.7.msi)将帮助开发者在他们的开发环境中安装这个插件,以便于在创建和测试应用程序时直接与MySQL数据库交互。 MySQL Connector/Net 6.9.8 是MySQL数据库与.NET Framework...
MySQL-connector-java-8.0.28 是MySQL数据库与Java应用程序之间通信的重要组件,它是一个JDBC(Java Database Connectivity)驱动程序,使得Java开发者能够通过编写Java代码来访问和操作MySQL数据库。在这个版本中,...
MySQL Connector/J是MySQL官方提供的用于Java应用程序连接MySQL数据库的驱动程序,它的全称为"mysql-connector-java"。在版本5.0.8中,这个jar文件提供了一个稳定且功能丰富的接口,使得Java开发者能够轻松地在他们...
该安装包中的"mysql-essential-5.1.52-win32.msi" 文件是一个Windows Installer包,用于在Windows系统上安装MySQL服务器、客户端工具和一些基础开发库。安装过程通常包括配置MySQL服务器的初始设置,如root用户的...
Hive通常会将元数据(例如表结构和分区信息)存储在关系数据库中,MySQL是一个常见的选择。集成MySQL可以提供高可用性和可扩展性,确保Hive的数据管理层面上的稳定性。 `Linux下的Mysql安装.doc`可能提供了在Linux...
3. **分区功能**:MySQL 5.5增强了分区功能,支持更多的分区类型和策略,如线性哈希分区、范围分区等,这有助于管理和优化大型表的性能。 4. **Full-text Search**:全文搜索功能在5.5版本中得到了增强,支持更多的...
4. **高性能**:基于Go语言的并发处理能力,Go-mysql-schema-sync在处理大量表结构同步时表现出优秀的性能,减少了同步过程中的等待时间。 5. **配置灵活**:用户可以通过配置文件灵活设定同步规则,比如选择特定的...
- **分区优化**:MySQL 5.6 对分区表的支持更加完善,包括对分区表的索引优化、分区裁剪等,这些改进使得分区表的查询速度更快。 - **InnoDB 存储引擎增强**:InnoDB 是 MySQL 最常用的事务安全存储引擎之一,在 ...
这个“mysql-installer-community-8.0.28.0”压缩包包含的是MySQL数据库的安装程序,专为用户提供了一个方便的方式来安装和配置MySQL服务器。 **MySQL 8.0的主要特性:** 1. **性能提升**:MySQL 8.0通过优化查询...