MySQL优化 - 较差的innodb设置或硬件不足?

时间:2016-10-30 14:03:01

标签: mysql optimization

我目前正在尝试针对主要是INSERT和UPDATE语句的请求优化我的MySQL数据库(运行innodb引擎)。

我使用的是具有2GB内存/ 2个CPU和40GB磁盘的非常基本的服务器。我已经浏览了大部分MySQL文档,包括优化(https://dev.mysql.com/doc/refman/5.7/en/optimizing-innodb-diskio.html)和内存使用(https://dev.mysql.com/doc/refman/5.7/en/memory-use.html)。

我已将my.conf文件设置为:

class TrainSpliter(object):
    def __init__(self):

尽管增加了池大小,块大小和实例数量,但我仍然看到显着的查询瓶颈,并且两个CPU都以100%运行。

我是否可以在innodb引擎上做更多烦恼以减少这些瓶颈?或者仅仅是使用更大规格硬件的情况?

2 个答案:

答案 0 :(得分:3)

innodb_buffer_pool_size = 2147483648 NOT 将在2GB服务器上运行。更改为300M

你有一台小机器;如果您增加了任何其他设置,请还原更改!

让我们看看你的my.cnf;可能有一些缩小的设置,以便您可以适应2GB(或2GiB)的RAM。

答案 1 :(得分:1)

可怜的innodb设置是肯定的。 你的innodb_buffer_pool_size大于2GB,它是2GiB ..它甚至不应该像所有人建议的那样关闭,也会记录下来。

可能也是硬件不足,甚至编程错误的SQL。