目前,我正在从头开始设计一个新的数据库,试图预见到随着规模的增加可能出现的任何问题。
我现在正在制作登录系统
我有表:(InnoDB,动态)
)。
目前,所有表都有一个来自"user“表的ID外键--它们可能也可能没有自己的ID,这取决于是否需要它。"user_profile“还有来自"user”表的"email“外键。
我还计划添加营销表,外键从“用户”表"id“在未来将做任何事情,从跟踪流量,监测点击,等等。
,我的设置会执行得最优吗?有什么建议可以改进我的工作表现吗?我甚至需要外键吗?将非常感谢您的帮助
。
期待您的问题:
为什么要分割用户和user_profile?
我希望在登录时能获得更好的成绩.也许不是?并不是那么熟悉外键,他们似乎总是阻碍多于他们的帮助,但我真的想从一开始就做“正确”的事情。
定义“规模”
网站上有100000名用户,因为如果达到这个规模,我很确定我可以雇佣一个开发者团队
编辑:谢谢-1没有任何评论,很高兴你比我更了解MySQL。
发布于 2022-05-25 21:05:03
6次更新--没什么大不了的。应该能够每秒处理数以百计的用户。
如果这些表中的任何一个是"1:1",那么考虑将它们组合起来。(如果它们是“1:多”,那么单独的表是合适的。)
索引对性能非常重要。FOREIGN KEY是两件事:索引和一致性检查。许多教科书都提倡使用FKs,而我通常只对相同的索引感到满意。
https://stackoverflow.com/questions/72383942
复制相似问题