如何加快mysql以容纳数千行

时间:2013-10-22 06:13:21

标签: php mysql asp.net json

即时制作一个允许用户添加帖子并可以发表评论的网站。 在这种情况下,我将使用数据库表来收集它们的帖子和评论。 我有两个表,一个用于帖子,另一个用于评论。 如下......

 --------------------------------------
 Table for posts
 --------------------------------------
 post_id | user_id | contents | media | time


 --------------------------------------
 Table for comments
 --------------------------------------
 comment_id | user_id |post_id |contents | media |time

这个结构是否正确可以完全填补我的工作? 我很少怀疑mySQL数据库的速度是否足以在batabase表随时间填充行数时提供服务。 所以...那么需要很长时间才能找到某些post_id的评论吗?

请帮我解决这个问题。 感谢。

2 个答案:

答案 0 :(得分:0)

您的结构应该没问题,并且根据服务器,MySQL应该没有问题服务器数百万行。

但是,您应该记住在计划选择的字段上添加索引。如果您知道将通过post_id获取注释,则应在此字段上添加索引。

如果您打算使用innoDB,您还应该记住从comments表中添加一个外键约束到posts表(这实际上会自动为您提供索引)。 http://dev.mysql.com/doc/refman/5.6/en/create-table-foreign-keys.html

如果要根据多个字段(如post_id和user_id)进行选择,还应在这些字段上添加组合索引。

答案 1 :(得分:0)

是肯定的。你的结构似乎没问题。 MySQL比你想象的更快,功率更充分 但是,你必须学会​​管理。在需要的地方添加索引。
索引允许数据库应用程序快速查找数据;没有看完整张桌子。 http://www.w3schools.com/sql/sql_create_index.asp

将评论表中的外键约束添加到posts表中。 http://www.w3schools.com/sql/sql_foreignkey.asp