一般情況下,我們創建的表的類型是InnoDB,如果新增一條記錄(不重啓mysql的情況下),這條記錄的id是18;但是如果重啓(文中提到的)MySQL的話,這條記錄的ID是15。因爲InnoDB表只把自增主鍵的最大ID記錄到內存中,所以重啓數據庫或者對錶OPTIMIZE操作,都會使最大ID丟失。
但是,如果我們使用表的類型是MylSAM,那麼這條記錄的ID就是18。因爲MylSAM表會把自增主鍵的最大ID記錄到數據文件裏面,重啓MYSQL後,自增主鍵的最大ID也不會丟失。
注:如果在這17條記錄裏面刪除的是中間的幾個記錄(比如刪除的是10,11,12三條記錄),重啓MySQL數據庫後,insert一條記錄後,ID都是18。因爲內存或者數據庫文件存儲都是自增主鍵最大ID