MySQL 5.7默认安装运行速度比5.6慢得多

MySQL 5.7默认安装运行速度比5.6慢得多,mysql,Mysql,我有一个java/spring/hibernate应用程序,运行时连接到MySQL数据库 我们最近从5.6升级到了5.7(在Windows服务器上),该应用程序的完成时间从3小时缩短到了3天。它基本上使用hibernate连接从数据库中检索只读数据,然后再对其进行处理并将结果转储到其他地方 然而,作为第一步,部分是为了检查导致问题的升级版本,我在我的开发机器上安装了5.7.21。然后,我注意到,即使是进行数据库恢复也需要几个小时,而不是5.6上过去需要10分钟的时间。这让我相信,与其说“驱动程序

我有一个java/spring/hibernate应用程序,运行时连接到MySQL数据库

我们最近从5.6升级到了5.7(在Windows服务器上),该应用程序的完成时间从3小时缩短到了3天。它基本上使用hibernate连接从数据库中检索只读数据,然后再对其进行处理并将结果转储到其他地方

然而,作为第一步,部分是为了检查导致问题的升级版本,我在我的开发机器上安装了5.7.21。然后,我注意到,即使是进行数据库恢复也需要几个小时,而不是5.6上过去需要10分钟的时间。这让我相信,与其说“驱动程序”过时,还不如说是配置问题(我确实认为我的第一步是升级应用程序依赖项)。我没有安装服务器,但是我用默认的“开发者”安装了我的开发机器。服务器和开发人员计算机都是64位Windows


我四处寻找明显的陷阱,但还没有发现任何东西。我只是想知道在我开始认真思考之前,是否有人能给我指出正确的方向?我对开箱即用的MySQL有很好的基本了解,但我还没有做过很多配置,所以即使是指向my.ini中可能的可疑对象的指针和最好的调查方法都会很有帮助。

升级时,请注意
innodb\u buffer\u pool\u size
变量值

它控制MySQL使用多少内存来加快I/O操作。通常,这是一个使它飞或使它像蜗牛爬行。关于这个特殊变量有很多东西要写,关于它有很多优秀的博客文章,所以我将避免详细解释它

要查看当前值,请键入MySQL终端:

SHOW VARIABLES LIKE '%innodb_buffer_pool%';
更改配置文件中的值并重新启动MySQL


对于价值,不要过火,不要超过你的整个RAM。您希望它尽可能高,尤其是对于具有大量数据的服务器。

查找
innodb\u buffer\u pool\u size
。首先使用
显示变量“%innodb_buffer_pool%”查询MySQL。如果希望这个值尽可能高,它控制MySQL为I/O操作分配的RAM量,因此它避免了对磁盘的影响。这是常见的罪魁祸首,可能是升级用默认值重写了旧值。非常感谢。你想做一个答案还是我应该删除这个问题?其他人可能也有同样的问题,我做了一个答案,如果是这样的话-很好,我们找到了罪犯,很高兴你把它分类了!