最近工作业务上,需要创建一个表,用来记录数据;考虑到功能上线后,对应的数据量会很大,如果只建个单表,那么后期的表会很大,不利于维护。于是在建表的时候,采取对表进行分区的策略。在这个过程中,遇到了一些错误以及解决办法。
CREATE TABLE `day_log` ( `id` bigInt(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id', `uid` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户账号', //////一些其他字段 `dateTime` bigInt(20) unsigned NOT NULL COMMENT '注册时间', PRIMARY KEY (`id`,`dateTime`), KEY `idx_did_dateline` (`did`,`dateTime`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='记录表'; /*!50100 PARTITION BY RANGE (dateTime) (PARTITION p202404 VALUES LESS THAN (1714492800) ENGINE = InnoDB, PARTITION p202405 VALUES LESS THAN (1717171200) ENGINE = InnoDB, PARTITION p202406 VALUES LESS THAN (1719763200) ENGINE = InnoDB) */;执行SQL语句,报错如下: