MySQL 修改 AUTO_INCREMENT 最後累加的值

MySQL 的 Primary Key 使用自動累加 AUTO_INCREMENT,使用 show create table tbl 就可以看到下一個最新要設定的 AUTO_INCREMENT 值是多少 (或者 SELECT MAX(id) + 1 FROM tbl 查看)

想要修改 AUTO_INCREMENT 下一個新增的值,可以使用下述 SQL 語法:

  • mysql> ALTER TABLE tbl AUTO_INCREMENT = n;
  • mysql> ALTER TABLE tbl AUTO_INCREMENT = 1;

抓取 MySQL Table 的 auto_increment 最大值

MySQL 使用 InnoDB 要做 SELECT COUNT(*) 會非常慢, 若是此 Table 符合下述狀況

  1. 很少刪除 (或知道大概會刪多少資料)
  2. 只需知道大概筆數
  3. 有設定 auto_increment

就可以考慮直接抓取 auto_increment 的值來當參考.

閱讀全文〈抓取 MySQL Table 的 auto_increment 最大值〉