MySQL数据库速度问题

时间:2009-11-28 09:04:57

标签: mysql

在数据库中包含多个表是否可以,或者我应该创建另一个数据库?如果是这样,我在数据库中应该有多少个表的限制是什么?

数据库中有多个表会影响数据库的速度吗?

3 个答案:

答案 0 :(得分:1)

这取决于表的大小,以及您将要执行的读/写量,这又取决于您正在运行的硬件以及您正在使用的表的类型。

性能通常会因大量I / O而降低,因为这往往是系统中最慢的部分。

至于你关于限制的其他问题,我建议你看看MySQL文档。

答案 1 :(得分:1)

真的,关键是要采用良好的关系数据库设计,并适当地理解和优化您的查询。在数据库中有许多表不会影响速度。构建那些设计糟糕的表,并使用低效查询访问数据绝对会。

MySQL需要注意的一个限制是使用MyISAM数据库引擎,单个表的大小不能超过4GB。 InnoDB没有我所知的限制。

答案 2 :(得分:0)

如果您的多个表位于一个或多个数据库中,我认为它在性能上没有太大差异。 (如果您需要在一个查询中引用多个表,那么如果表不是全部在不同的数据库中,那么它们将更容易编写查询,尽管这不是性能问题。)

然而,在您的问题中隐含的是另一个问题:将数据结构化为特定这些表的性能影响是什么,而不是使用不同数量和结构的表的其他模式。这是许多数据库设计师面临的问题。通常存在显着的性能差异。几乎没有任何有效性的一般规则。 MySQL手册中包含的一个是:使用最小化总DB大小的模式。它不能保证是最高性能的架构,但它通常值得考虑。