Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Warum erhöht INSERT IGNORE den Primärschlüssel auto_increment?

Dies ist das Standardverhalten seit MySQL 5.1.22.

Sie können die Konfigurationsvariable innodb_autoinc_lock_mode auf 0 (auch bekannt als „traditioneller“ Sperrmodus) Wenn Sie Lücken in Ihren Auto-Increment-Spalten vermeiden möchten. Dies kann jedoch zu Leistungseinbußen führen, da dieser Modus bewirkt, dass eine Tabellensperre bis zum INSERT gehalten wird vervollständigt.

Aus den Dokumenten auf InnoDB AUTO_INCREMENT Lock Modes :