I have a mysql table with about 2,000,000 entries, with a primary key which is auto incrementing. However, at one point the auto increment value suddenly jumped from what it
A failed insert can still cause the auto-increment column to increase. If your program went into an infinite loop of failures it could cause the limit to be reached.
It's also possible to set the auto-increment programmatically to a specific value.
ALTER TABLE yourtable AUTO_INCREMENT = 12345;
One reason for this could be-
If you entered random numbers in the column of auto increment, then it could be because auto_increment
works only in ascending order. So when you inserted the number, which is near to maximum limit, then it reached the maximum limit soon and you couldn't enter anything else.