Quando si utilizza il comando:Perché MySQL usa una tabella temporanea per rilasciare una chiave primaria?
ALTER TABLE my_table DROP PRIMARY KEY;
Lo stato (quando SHOW PROCESSLIST) appare come:
copy to tmp table
Perché avrebbe bisogno di utilizzare una tabella tmp a "goccia" un vincolo di chiave primaria?
"dettagli di implementazione" ;-) Sospetto che le modifiche del cluster di dati sottostanti - ad es. si sposta su un "heap" o altrimenti si ricompone in quel particolare motore? (InnoDB? MyISAM?) Poiché si tratta di un'operazione DDL - e non comune - il "modo più semplice" è spesso il "modo migliore", soprattutto se può riutilizzare percorsi di codice ben testati/verificati. –