我有一个问题:
Update users set Numreviews = 1 where userID = 12345
两个字段'numreviews'和'userID'都有索引,可以帮助不相关的SELECT查询。
我遇到的问题是运行第一个UPDATE查询。最多可能需要1分钟。当我几秒钟后再运行另一个用户ID时,它通常需要几毫秒。
这种模式非常一致。
任何建议将不胜感激。这是在Windows Server 2008 R2 Datacenter上运行的MySQL 5.1.11上。我已经尝试多次重启IIS并重新启动数据库。
答案 0 :(得分:0)
也许最初的时间基本上是醒来,连接/握手等等。
看来这可能是由how MySQL uses DNS引起的。该链接更详细地解释了这一点,但基本上当您第一次连接时,首次连接时会进行反向查找。有几种方法可以解决这个问题。最简单的(假设您从应用程序运行它)是为您的应用程序设置池。反正这很好。
您也可以使用--skip-name-resolve启动服务器,或增加HOST_CACHE_SIZE