我仍在努力使用InnoDB引擎来处理MySQL数据库的性能。特别是数据插入的性能,较小的运行查询的性能。
我一直在谷歌上搜索信息,操作方法等等,但我发现大多数信息都是深刻的问题。我可以在网上找到“新手”的一些基本信息,这是性能优化的起点吗? InnoDB优化的第一个,最重要的步骤,以一种不太复杂的方式解释。
我正在使用Windows平台
答案 0 :(得分:15)
我曾经管理过几个非常大的MySQL数据库(比如,1TB +)。他们是巨大的,无情的野兽,无尽的胃口让我胃病。
我阅读了有关MySQL性能调优和innodb的所有内容。以下是对我有用的总结:
最后,它只是在试验和处理事情,直到你获得足够的知识来了解它的作用。
答案 1 :(得分:4)
对于新手:innodb_flush_log_at_trx_commit = 0,如果服务器崩溃,你可以承受最多1秒的工作损失。这是性能与可靠性之间的权衡,但它会极大地提高您的写入性能。如果你能负担得起电池支持的写缓存,请使用它。
特别是在Windows上,对于写入性能,MariaDB 5.3可能比Oracle中的MySQL更好,因为MariaDB能够更好地利用Windows上的异步IO。我在前一段时间写了一篇关于它的说明here,在标准的综合基准测试中,它比MySQL 5.5的存储效率提高了500%(参见说明末尾的图片)。
然而,杀死性能的首要因素是磁盘刷新。如果您使用* innodb_flush_log_at_trx_commit *参数放松持久性,并使用电池备份写入缓存,则可以解决此问题。您也可以考虑使用更大的事务,它们可以减少磁盘刷新量。
答案 2 :(得分:1)
尝试MySQL Primer脚本:http://day32.com/MySQL/
答案 3 :(得分:-1)
我没有使用'网,我用过书。 :)
我以前学习MySQL的书是来自Wrox Press的“Beginning MySQL”,Robert Sheldon和Geoff Moes。第15章介绍了一些优化的基础知识。我很喜欢这本书,认为这本书很好读,并且是我的第一号参考书。但它并不是特定的存储引擎。
我还有另一本书,来自apress的Pro MySQL,它详细介绍了特定的存储引擎,但它也更难阅读。尽管如此,仍然是一个很好的参考。