1
2
另一种方法是添加摘要表:
在tbl中添加一些触发器,以便: 关于插入:
关于删除:
更新:
这将减慢插入速度,但允许您在摘要表中单击
最大的问题是启动摘要表的值。如果可以使应用程序脱机,则可以使用tbl中的值轻松初始化摘要。
但是,如果您需要保持服务的运行,那么就更加困难了。如果有副本,则可以停止复制、构建摘要表、安装触发器、重新启动复制,然后将服务故障转移到使用副本,然后在失效的主服务器上重复该过程。 如果您不能这样做,那么您可以一次更新汇总表的一个col值,以减少影响:
或者,如果您可以忍受长时间停机:
|
2
1
覆盖指数有助于:
这样就可以在不读取数据文件的情况下执行求和—这应该更快。 您还应该跟踪您的密钥缓冲区有多有效,以及是否需要为其分配更多内存。这可以通过轮询服务器状态并监视“key%”值来完成:
密钥读取请求(即索引查找数)与密钥读取(即需要从磁盘读取索引块的请求数)之间的比率非常重要。磁盘读取次数越高,查询运行速度越慢。您可以通过增加配置文件中的keybuffer大小来改进这一点。 |
hello_programmers · Mysql从其他表输出一列 1 年前 |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |
Popo · Sql查询:返回数据库中不可用的where条件 1 年前 |
Hamdan Nuramdani · 对账单中一周内不同表中的数据求和 1 年前 |
Kugelfisch · 用php为数据库加密数据 1 年前 |