27 浏览
0 Comments

MySQL数据库的性能从何时开始下降?

  • 物理数据库大小是否重要?
  • 记录数是否重要?
  • 性能降级是线性还是指数级的?

我认为我有一个很大的数据库,大约有1500万条记录,占用了将近2GB的空间。基于这些数字,我的数据清理是否有任何激励,或者我可以安全地允许它在接下来的几年里继续扩展?

admin 更改状态以发布 2023年5月22日
0
0 Comments

总的来说,这是一个非常微妙的问题,绝对不是轻松的。我鼓励您阅读mysqlperformanceblog.comHigh Performance MySQL。我真的认为没有通用的答案。

我正在处理一个具有近1TB数据的MySQL数据库的项目。最重要的可扩展性因素是RAM。如果你的表的索引适合于内存,你的查询高度优化,你可以服务于合理数量的请求,使用平均机器。

记录的数量确实很重要,取决于您的表的外观。有许多varchar字段和只有一些int或long的区别。

数据库的物理大小也很重要:例如备份。根据您的引擎,您的物理数据库文件会增长,但不会缩小,例如在innodb中。因此,删除很多行并不会帮助缩小您的物理文件。

这些问题有很多要考虑的细节,而且在许多情况下,魔鬼就在细节中。

0
0 Comments

物理数据库大小并不重要。记录的数量也不重要。

根据我的经验,你可能会遇到的最大问题不是大小,而是能够同时处理的查询数量。很可能你需要转移到主/从配置,这样读取查询可以针对从属进行,写入查询可以针对主进行。但是,如果你还没有准备好做这些,你可以根据正在运行的查询调整索引以加速响应时间。此外,在 Linux 中,你可以做许多对网络栈和内核的调整来提高性能。

我曾经让我的数据库达到了10GB,只有适度的连接数,但它可以很好地处理请求。

我建议首先专注于你的索引,然后让服务器管理员查看你的操作系统,如果所有这些都没有帮助,可能是时候实施主/从配置了。

0