复现步骤:
1.建立下游表结构
create table a(
id int not null ,
LogTime datetime not null,
unique key idx (id,LogTime)
)PARTITION BY RANGE ( TO_DAYS(`LogTime`) ) (
PARTITION `p202101` VALUES LESS THAN (738187),
PARTITION `p202102` VALUES LESS THAN (738215)
);
2.建立上游的表结构,
create table a(
id int,
LogTime datetime,
key idx (id)
)PARTITION BY RANGE ( TO_DAYS(`LogTime`) ) (
PARTITION `p202101` VALUES LESS THAN (738187),
PARTITION `p202102` VALUES LESS THAN (738215)
);
3.上游执行插入操作,能正常同步到下游
MySQL [xx]> insert into a values(1,'2021-1-1');
Query OK, 1 row affected (0.03 sec)
MySQL [xx]> insert into a values(1,'2021-2-1');
Query OK, 1 row affected (0.01 sec)
MySQL [xx]>
4.下游查询数据,能正常查到数据
mysql> select * from a;
+----+---------------------+
| id | LogTime |
+----+---------------------+
| 1 | 2021-01-01 00:00:00 |
| 1 | 2021-02-01 00:00:00 |
+----+---------------------+
2 rows in set (0.00 sec)
mysql>
5.在下游表结构中增加新的分区
alter table a add PARTITION ( PARTITION `p20210401` VALUES LESS THAN (738246));
6.在上游表结构中增加新的分区
alter table a add PARTITION ( PARTITION `p20210401` VALUES LESS THAN (738246));
7.在上游插入数据。下游不能查到新插入的数据。
MySQL [xx]> insert into a values(1,'2021-3-1');
Query OK, 1 row affected (0.01 sec)
MySQL [xx]> insert into a values(1,'2020-3-1');
1.建立上游的表结构
create table a(
id int,
LogTime datetime,
key idx (id)
)PARTITION BY RANGE ( TO_DAYS(`LogTime`) ) (
PARTITION `p202101` VALUES LESS THAN (738187),
PARTITION `p202102` VALUES LESS THAN (738215)
);
2.添加分区。
alter table a add PARTITION ( PARTITION `p20210401` VALUES LESS THAN (738246));
3.上游执行插入操作,下游不能查到数据
MySQL [xx]> insert into a values(1,'2021-1-1');
Query OK, 1 row affected (0.03 sec)
MySQL [xx]> insert into a values(1,'2021-2-1');
Query OK, 1 row affected (0.01 sec)
MySQL [xx]>