2017-04-18 3 views
0

Ich habe eine Tabelle mit 5 Hash (key_1) Partitionen. Ich möchte das ändern, also hat es stattdessen 5 Hash (key_2) Partitionen, aber ohne Daten zu verlieren.Wie ändert man eine mysql innodb-Partition, um einen anderen Schlüssel zu verwenden?

Wie mache ich das? Ich habe gesucht, aber es ist schwer, eine Bestätigung zu finden, dass ich keine Daten verliere, indem ich Partitionen lösche.

+0

Was erhoffen Sie sich von der Partitionierung? (Meiner Meinung nach ist "BY HASH" völlig nutzlos.) –

Antwort

1

Das Löschen, Abschneiden oder Löschen von Partitionen wird definitiv Daten verlieren. Sie können die Partitionierung mit ALTER TABLE ändern, zum Beispiel ALTER TABLE t PARTITION BY HASH (key_2) PARTITIONS 5. Dies wird keine Daten verlieren, aber (zumindest mit InnoDB) wird die Tabelle für Schreibvorgänge gesperrt und mit der neuen Partitionierung neu aufgebaut.

Verwandte Themen