我正在我的机器上运行一些单元和集成测试。在这个测试环境中,数据完整性无关紧要。我不在乎数据是否写入光盘,我只想让我的测试速度很快。InnoDB在测试环境中的性能
有没有我能启用的选项,InnoDB完全在RAM中运行?
我正在我的机器上运行一些单元和集成测试。在这个测试环境中,数据完整性无关紧要。我不在乎数据是否写入光盘,我只想让我的测试速度很快。InnoDB在测试环境中的性能
有没有我能启用的选项,InnoDB完全在RAM中运行?
除了将表类型内存而不是InnoDB的,你可以通过使用innodb_flush_log_at_trx_commit
设置使插入和更新显著更快。
设置为2而不是1可以轻松地使插入和更新速度提高10倍或更多。实际上,这导致InnoDB每秒都会将数据fsync()数据传输到事务日志,而不是每次事务提交。
另一种选择是只使用更大的事务(尤其是如果您插入大量数据并使用自动提交)。
一些选项: