我有一个带有生产数据库和登台数据库的mysql服务器。我使用innodb作为生产表,但我不需要只是移动数据的分段功能。所以我决定将这些表切换到myisam,期望插件性能提高。
结果太可怕了。它看起来更像是在没有自动提交禁用的情况下插入到innodb表中。如果我保留表innodb并在插入期间关闭自动提交,我可以每秒获得数千个插入。一旦我将表格更改为myisam,我每秒钟可能会有几十个插页。
我想也许是因为我使用SSIS通过我们的遗留后端获取数据,但这似乎不是问题。使用SSIS并从我们的生产数据库转到staging db(mysql到mysql)我仍然看到相同的结果... innodb(没有自动提交)远远执行myisam。
这对我没有意义。如果没有别的,根据我的经验,myisam至少应该具有可比性,希望更好。
我有什么明显的俯视吗?我没有提到细节,希望它是一般的东西,我不知道。
修改
这似乎与SSIS和ODBC目标组件有关。我正在使用具有select语句的ODBC Source,输出将转到ODBC Destination,它是同一服务器上的表,但是不同的DB。由于DB在我运行的同一台服务器上运行,在SqlYog中,INSERT使用与ODBC Source相同的SELECT查询,并在几秒钟内完成。我会看看能否找到解决方案。