gpt4 book ai didi

php - 如何在 mysql 中管理每日 5000 条记录插入更新?

转载 作者:搜寻专家 更新时间:2023-10-30 20:15:59 30 4
gpt4 key购买 nike

我正在使用 PHP MYSQL 创建学校出勤项目,学校有 5000 名学生。每天在数据库中插入 5000 条记录 所以每年 (500x365) = 1 年的 1825000 条记录。

每天 mysql 数据库记录大小都在增加,所以如何管理更多数据。每天如缺席、出席、离开等。状态正在插入。

请帮助我如何使用 PHP MYSQL 以最佳方式轻松管理数百万条记录。

最佳答案

每年 200 万(20 万)行完全在 MySQL 或任何称职的 RDMS 的能力范围内。在接近十亿(10 亿)条记录之前,我们通常不会开始使用“庞大”一词。

但是你还有一个有趣的问题。您正在启动一个新的应用程序,而您的数据库中只有很少的记录。在最初的几周和几个月内,随着您的应用程序的使用,您的数据库将不再“小”,而是开始“中等”。

这是您可以预料到的情况:随着数据库的增长,您的应用程序中的某些查询会变慢。您需要对此保持警惕,并识别慢速查询。 MySQL 服务器提供一个慢速查询日志来帮助解决这个问题。您可以阅读有关如何使用它的信息。

当您识别出缓慢的查询时,您可以使用 EXPLAIN 命令来提示您为什么它们很慢。增长应用程序的缓慢通常是因为您需要向某些表添加索引。就这样做吧。最好在非高峰时段添加索引。在您每天对表进行备份后不久,就是执行此操作的好时机。 (您每天都在做备份,对吗?)

如果您添加正确的索引选择,您的慢速查询将不再是慢速查询。这并不意味着您可以停止警惕:下一阶段的增长很可能会识别出另一个缓慢的查询。

用计算机科学的术语来说,应用程序中的某些查询需要 O(n) 时间,其中 n 是某个表中的行数。其他人将采用 O(n-squared) 或更糟。当 n 是一个小数字时,您根本不会注意到这一点。但随着 n 的增长,这些查询会成为用户性能的瓶颈。 DBMS 软件非常擅长通过在表上使用索引来应对这种低效率问题。因此,您需要在识别瓶颈查询时添加必要的索引。

即使是经验丰富的人,也很难预测随着新应用程序的增长哪些查询会变慢。同时,添加大量索引作为防止减速的保险通常无济于事。因此,这种保持警惕的需求并不是您的失败:它只是操作数据库应用程序的一部分。

一些公司和组织雇用数据库管理员 (DBA) 来完成此类工作。如果您可以访问 DBA,请利用它。

与此同时,阅读 http://use-the-index-luke.com/了解这些索引的工作原理。

并且,恭喜您启动了一个可以增长的应用程序!这很重要。

关于php - 如何在 mysql 中管理每日 5000 条记录插入更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39962409/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com