Home > Linux > auto_increment поле в InnoDB таблица след OPTIMIZE

auto_increment поле в InnoDB таблица след OPTIMIZE

Преди около седмица се изправих пред поредния “невъзможен” проблем. Незнайно как, auto_increment полето в една от таблиците се нулираше само. По първи впечатления това се случваше на произволен интервал от време, но по-късно разбрах, че причината е в един определен cron.
Въпросният cron има за цел да оптимизира и подреди базата данни. Общо взето може да се каже, че е garbage collector за доста от нещата в базата. След съответните зачистващи процедури пуснах и процедура за оптимизиране на таблиците, а именно “OPTIMIZE table X”, където Х е името на всяка една от нужните таблици.
За моя голяма изненада, след 3 дни проблеми и опити да реша проблема, се оказа, че когато правите OPTIMIZE на InnoDB таблица, auto_increment полето в нея се нулира. За справка можете да погледнете този bug report в MySQL Bugs.

Categories: Linux Tags:
Вижте всички статии от
Technology lover
Този автор е написал 156 статии