MySQL 分区是将一个表或索引分解成多个更小、更可管理的部分的技术。分区表由一组与主表结构相同的子表组成,但存储在不同的物理位置。MySQL 会根据分区规则自动将数据分散到各个分区中。
MySQL 支持多种分区类型,包括:
假设我们有一个已存在的表 orders
,结构如下:
CREATE TABLE orders (
order_id INT AUTO_INCREMENT,
order_date DATE,
customer_id INT,
total_amount DECIMAL(10, 2),
PRIMARY KEY (order_id)
);
我们可以根据 order_date
进行 RANGE 分区。以下是具体步骤:
ALTER TABLE orders ADD COLUMN partition_key DATE;
UPDATE orders SET partition_key = order_date;
ALTER TABLE orders
PARTITION BY RANGE (YEAR(partition_key)) (
PARTITION p0 VALUES LESS THAN (2010),
PARTITION p1 VALUES LESS THAN (2020),
PARTITION p2 VALUES LESS THAN MAXVALUE
);
希望这些信息对你有所帮助!如果有更多问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云