如何在创建mysql表之后对其进行分区

如何在创建mysql表之后对其进行分区,mysql,performance,indexing,database-partitioning,Mysql,Performance,Indexing,Database Partitioning,我正在尝试对我的表进行分区,以便缩小记录范围,这样访问数据的时间就不会像现在这样长 我要分区的这个表有2个键字段 (1) “tigger_on”是一个日期时间字段,我经常使用它作为查找键。 (2) “状态”有3个值:1=活动,2=完成,0=清除 我不确定划分这个表以便select语句更容易访问的最佳方法是什么 首先,我有一个问题,当我做一个分区时,这是否会创建一个新表,所以我将不得不更改我的查询?还是像索引一样缩小搜索范围,从而减少查找数据 第二,如何更改现有表以添加此分区?我应该根据日期范围或

我正在尝试对我的表进行分区,以便缩小记录范围,这样访问数据的时间就不会像现在这样长

我要分区的这个表有2个键字段 (1) “tigger_on”是一个日期时间字段,我经常使用它作为查找键。 (2) “状态”有3个值:1=活动,2=完成,0=清除

我不确定划分这个表以便select语句更容易访问的最佳方法是什么

首先,我有一个问题,当我做一个分区时,这是否会创建一个新表,所以我将不得不更改我的查询?还是像索引一样缩小搜索范围,从而减少查找数据

第二,如何更改现有表以添加此分区?我应该根据日期范围或状态进行分区,还是两者都可以

我以前从未做过分区,所以我不知道它是如何完成的


注意这个表有500万条记录,我添加了索引。因此,我现在正在寻找索引之外的解决方案。

您能否显示您提到的访问此表的查询?另外,您可以提供的关于访问模式的更多信息也会很有用,因为这将真正确定最佳分区方法是什么。例如,您通常是根据
tigger\u on
value来查找最近的记录吗?@MikeBrant,谢谢您的回复。事实上,前几天我发布了一篇关于调整我的查询的不同帖子,多亏了“Captin Payalystic”,他引导我找到了正确的路径此链接显示了查询和有关我的表格的更多信息尝试此链接一次:这回答了我的一些问题。谢谢你。但我仍然有一个问题,在创建分区后是否必须更改查询?看起来我会有“状态”和分区,年份范围和一个子分区。