0

我有一个带有生产数据库和临时数据库的 mysql 服务器。我将 innodb 用于生产表,但我不需要仅移动数据的暂存功能。所以我决定将这些表切换到 myisam 以提高插入性能。

结果很可怕。它看起来更像是在没有禁用自动提交的情况下插入到 innodb 表中。如果我保留表 innodb 并在插入期间关闭自动提交,我每秒可以获得数千次插入。一旦我将表更改为 myisam,我每秒可能会获得几十个插入。

我想可能是因为我使用 SSIS 通过我们的遗留后端获取数据,但这似乎不是问题。使用 SSIS 并从我们的生产数据库转到暂存数据库(从 mysql 到 mysql)我仍然看到相同的结果...... innodb(无自动提交)远远执行 myisam。

这对我来说毫无意义。如果不出意外,根据我的经验,myisam 至少应该具有可比性,希望甚至更好。

有什么明显的我忽略了吗?我没有包括细节,希望这是我普遍缺少的东西。

编辑:

这似乎与 SSIS 和 ODBC 目标组件有关。我正在使用具有我的 select 语句的 ODBC 源,输出到 ODBC 目标,它是同一服务器上的表,但不同的数据库。由于数据库位于我在 SqlYog 中运行的同一台服务器上,因此 INSERT 使用与 ODBC 源相同的 SELECT 查询,并在几秒钟内完成。我会看看我是否能找到解决方案。

4

0 回答 0