Cet article vous présente principalement les informations pertinentes sur l'ajout et la suppression de la partition de plage MySQL 5.5. L'article le présente en détail à travers l'exemple de code, qui a une certaine valeur de référence et d'apprentissage pour tous les amis qui en ont besoin. regarde ci-dessous.
Introduction
Le partitionnement RANGE est basé sur une plage d'intervalles continus donnée. La première version de RANGE était principalement basée sur un partitionnement d'entiers. Dans la version 5.7, les colonnes DATE et DATETIME peuvent également utiliser le partitionnement RANGE, et les versions supérieures à 5.5 fournissent un partitionnement RANGE COLUMN non basé sur la mise en forme. Les partitions RANGE doivent être contiguës et ne peuvent pas se chevaucher. Utilisez
"VALUES LESS THAN ()" pour définir l'intervalle de partition. Les valeurs de plage non entières doivent utiliser des guillemets simples et MAXVALUE peut être utilisée comme valeur la plus élevée de la partition.
Cet article vous présentera le contenu pertinent de l'ajout et de la suppression de la partition de plage dans MySQL 5.5, et le partagera avec vous pour votre référence et votre étude. Jetons un coup d'œil à l'introduction détaillée :
1. Supprimer des partitions
##查看要处理的分区的数据量,并导出作为备份 mysql> select count(*) from baby_account_change_log where updated_time >'2016-12-01 00:00:00' and updated_time <'2017-01-01 00:00:00'; +----------+ | count(*) | +----------+ | 66252 | +----------+ 1 row in set (0.23 sec) ##导出备份 mysql> select * into outfile '/tmp/baby_account_change_log_p1.sql' from baby_account_change_log where updated_time >'2016-12-01 00:00:00' and updated_time <'2017-01-01 00:00:00' limit 100000000000; Query OK, 66252 rows affected (2.71 sec) ##确认要处理分区 mysql> explain partitions select count(*) from baby_account_change_log where updated_time >'2016-12-01 00:00:00' and updated_time <'2017-01-01 00:00:00'; +----+-------------+-------------------------------+------------+-------+---------------+---------+---------+------+-------+--------------------------+ | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+-------------------------------+------------+-------+---------------+---------+---------+------+-------+--------------------------+ | 1 | SIMPLE | baby_account_change_log | p1 | index | NULL | PRIMARY | 8 | NULL | 66252 | Using where; Using index | +----+-------------+-------------------------------+------------+-------+---------------+---------+---------+------+-------+--------------------------+ ##删除分区 mysql> alter table baby_account_change_log drop partition p0; Query OK, 0 rows affected (0.01 sec)
2. Ajouter des partitions
#错误提示删除存储最大值分区 mysql> alter table baby_account_change_log add partition(PARTITION p13 VALUES LESS THAN (unix_timestamp('2017-12-31 23:59:59'))); ERROR 1481 (HY000): MAXVALUE can only be used in last partition definition #删除存储最大值分区 mysql> alter table baby_account_change_log drop partition p12; ##增加新的分区 mysql> alter table baby_account_change_log add partition(PARTITION p12 VALUES LESS THAN (unix_timestamp('2017-12-31 23:59:59')));
Recommandations associées :
Introduction détaillée de la partition de plage de la partition MySQL
plage de gestion de partition MySQL partition_MySQL
Partition MySQLrange (2)_MySQL
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!