在数据库中包含多个表是否可以,或者我应该创建另一个数据库?如果是这样,我在数据库中应该有多少个表的限制是什么?
数据库中有多个表会影响数据库的速度吗?
答案 0 :(得分:1)
这取决于表的大小,以及您将要执行的读/写量,这又取决于您正在运行的硬件以及您正在使用的表的类型。
性能通常会因大量I / O而降低,因为这往往是系统中最慢的部分。
至于你关于限制的其他问题,我建议你看看MySQL文档。
答案 1 :(得分:1)
真的,关键是要采用良好的关系数据库设计,并适当地理解和优化您的查询。在数据库中有许多表不会影响速度。构建那些设计糟糕的表,并使用低效查询访问数据绝对会。
MySQL需要注意的一个限制是使用MyISAM数据库引擎,单个表的大小不能超过4GB。 InnoDB没有我所知的限制。
答案 2 :(得分:0)
如果您的多个表位于一个或多个数据库中,我认为它在性能上没有太大差异。 (如果您需要在一个查询中引用多个表,那么如果表不是全部在不同的数据库中,那么它们将更容易编写查询,尽管这不是性能问题。)
然而,在您的问题中隐含的是另一个问题:将数据结构化为特定这些表的性能影响是什么,而不是使用不同数量和结构的表的其他模式。这是许多数据库设计师面临的问题。通常存在显着的性能差异。几乎没有任何有效性的一般规则。 MySQL手册中包含的一个是:使用最小化总DB大小的模式。它不能保证是最高性能的架构,但它通常值得考虑。