Maison >base de données >tutoriel mysql >Explication détaillée de l'ajout d'exemples de traitement de suppression pour la partition de plage MySQL 5.5

Explication détaillée de l'ajout d'exemples de traitement de suppression pour la partition de plage MySQL 5.5

小云云
小云云original
2018-01-17 09:54:321606parcourir

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 <&#39;2017-01-01 00:00:00&#39;;
+----------+
| 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 <&#39;2017-01-01 00:00:00&#39; 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 <&#39;2017-01-01 00:00:00&#39;;

+----+-------------+-------------------------------+------------+-------+---------------+---------+---------+------+-------+--------------------------+
| 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn