AUTO_INCREMENT handling in XtraDB/InnoDB
La gestione di AUTO_INCREMENT nello Storage Engine XtraDB presenta dei miglioramenti significativi nelle prestazioni. La variabile di sistema innodb_autoinc_lock_mode.
Il Lock Mode tradizionale
Impostato con innodb_autoinc_lock_mode=0, il lock mode tradizionale acquisisce un lock a livello di tabella per tutte le INSERT, fino al termine dell'istruzione.
Il Lock Mode consecutivo
Impostato con innodb_autoinc_lock_mode=1, il lock mode consecutivo acquisisce un lock a livello di tabella per le INSERT di massa (come LOAD DATA o INSERT ... SELECT) fino al termine dell'istruzione. Per le INSERT semplici, non vengono creati lock a livello di tabella. Invece, si usa un mutex leggero che scala molto meglio. Questa è l'impostazione predefinita.
Il Lock Mode intervallato
Impostato da innodb_autoinc_lock_mode=2, non acquisisce alcun lock a livello di tabella. E' la modalità più rapida e scalabile, ma non è affidabile se si usa la replica basata sulle istruzioni.