【发布时间】:2013-01-30 05:18:48
【问题描述】:
我有一个表格,它每秒从至少 10 个不同的来源接收数据。
我已将我的表划分为每月基数,每个月我创建一个表并将数据填充到表中。每个表将保存至少 100 万条记录。
我有 6 个字段作为主键并索引了 7 个字段。
我没有更改 MySQL 中的任何其他设置(Ubuntu 附带的默认设置)。
只有两个查询将在表上运行(插入和选择)
我看到数据库使我的应用程序变慢。
有没有办法提高查询的性能。
【问题讨论】:
-
一个有六个字段的复合主键?哇,你真的应该使用系统密钥。在表上添加太多索引也可能是有害的,您应该将列表缩小到您真正需要的索引。
-
您现在的查询时间是多少?
-
@jaya 嗨,如果您通过搜索选择数据,您可以使用全文搜索(MATCH AGANIST)............这对你来说会快得多...... ..dev.mysql.com/doc/refman/5.5/en//fulltext-search.html
-
@Ashwin 当我选择多个表时,每个查询需要 3 秒。当我从一个带有主键或索引键的表中选择数据时,它是 0.30 秒。当我选择非主键或非索引键时,它是 2 秒。
-
6 个主索引字段听起来非常错误。如果您需要帮助,您必须提供更多信息:表架构、您正在执行的确切查询、索引定义。如果必须,您可以匿名,但不要省略任何内容
标签: mysql database select database-performance