调整只写主 mysql 数据库

Tuning an write-only master mysql database

当我只运行 编写查询(插入、删除、更新)时,我有一个主数据库。
我想知道如何调整这个,因为选择在这里并不重要。

我正在使用 InnoDB。具有 1 个主站和 2 个从站的复制。 运行 在 Ubuntu 16.04 服务器上。 MySQL5.6

进一步调整取决于您的工作量。比如改变线程并发数或者IO写线程数或者IO容量。如果您想进行这种级别的调整,请咨询专业人士。


@spencer7593 的评论提出了一个很好的观点,您可能无法仅使用数据库调整选项来实现最佳优化。

您没有提到有关应用程序或写入类型的任何内容,但最终您将不得不考虑更改写入数据库的方式。单独调整更改在提高数据库性能方面是有限的。

例如,应用程序可以写入队列,然后创建消费者应用程序以使用队列中的项目并将数据批量写入数据库。这意味着更高效的数据库写入,但更重要的是,它允许应用程序 "write" 具有更低的延迟,因为它们只写入队列。

最终,您可能会发现没有任何一个数据库实例可以跟上写入的速度。到那时,您将不得不通过将写入分散到多个数据库实例来进行横向扩展。这就是所谓的"sharding"数据。当然这增加了数据库读取的复杂性,因为你的数据不是全部在一起的。因此,在求助于分片之前尝试所有可以尝试的调整更改。