InnoDB性能不稳定

我正在用一个非常简单的InnoDB表(名为Test)进行一些testing,结果如下:

Id int(10) unsigned NOT NULL AUTO_INCREMENT UserId int(10) NOT NULL Body varchar(512) COLLATE utf8_unicode_ci NOT NULL CreatedAt datetime NOT NULL 

UserId上的一个附加索引:

 KEY Idx_Test_UserId (UserId) USING BTREE 

当我尝试执行此查询…

 INSERT INTO Comments (UserId,Body,CreatedAt) VALUES (1,'This is a test',NOW()) 

…有时候我会在几毫秒内完成操作,但有些时候我需要几秒钟的时间。

我有一个简单的SELECT语句相同的问题:

 SELECT Body FROM Comments WHERE UserId=1 

我是唯一一个在这个特定的表上做testing的人,我真的不明白我有这样的执行时间差异。

最后一点,当我用MyISAM表进行相同的testing时,我没有任何问题。

对于InnoDB,“auto_increment”variables应该在索引(首先或单独)中以避免一些locking问题。 就我所知,MyISAM不会发生这种情况。

顺便说一句,为什么不是“身份证”的主要关键? 这并不是说它是必要的,但它只是“看起来”像它应该是这张桌子。