我正在运行MySQL数据库服务器。在负载测试期间,有数千个连接,MySQL查询需要几分钟的时间。我该怎么做才能优化这种情况?
以下是我的mysql数据库配置的简要说明
我意识到这是一个非常开放的问题,但是想要任何投入。
编辑:添加更多信息:
查询非常简单,例如"从q6中选择*,其中created_at =' 2013-10-02 + 00:00:00'"。 查询将始终只有这种形式。他们太多了。 表有图像(六个巨大的表之一): 创建表q4t_table( created_at TIMESTAMP, 推文(TEXT)engine = InnoDB;
表是在时间戳(或某些表中为int的userid)上编制索引的。 有一段时间,只能访问六个中的一个表。
表大小通常为300Mb或3Gb或8Gb。
答案 0 :(得分:2)
你可能因为有这么多打开的连接而内存不足。您应该使用连接池,如sqlRelay或内置于语言平台的池化机制。