是否可以在一个数据库中包含多个表,或者我应该创建另一个数据库?如果是这样,数据库中应该有多少个表的限制是多少?
数据库中有许多表会影响数据库的速度吗?
发布于 2009-11-28 17:14:04
这取决于表的大小,以及您将要执行的读/写操作的数量,这又取决于您正在运行的硬件和您正在使用的表的类型。
大量的I/O通常会降低性能,因为I/O往往是系统中最慢的部分。
至于您的另一个有关限制的问题,我建议您浏览一下MySQL文档。
发布于 2009-11-28 17:14:51
实际上,关键是采用良好的关系数据库设计,并适当地理解和优化您的查询。在一个数据库中有多个表不会影响速度。使用糟糕的设计构建这些表,并使用低效的查询访问数据,这绝对是错误的。
MySQL中需要注意的一个限制是,使用MyISAM数据库引擎时,单个表的大小不能超过4 4GB。据我所知,InnoDB没有这个限制。
发布于 2009-11-29 00:48:57
我认为,如果您的多个表位于一个或多个数据库中,则性能不会有太大差异。(如果您需要在一个查询中引用多个表,那么如果这些表不都在不同的数据库中,那么它们编写查询就会更容易一些,尽管这不是性能问题。)
然而,在您的问题中隐含着另一个问题:将我的数据专门组织到这些表中,而不是其他使用不同数量和结构的表的模式,会对性能产生什么影响。这是许多DB设计人员面临的问题。通常会有显著的性能差异。几乎没有有效的通用规则。MySQL手册中包含的一项内容是:使用最小化数据库总大小的模式。不能保证它是性能最好的模式,但它通常是值得考虑的模式。
https://stackoverflow.com/questions/1812038
复制相似问题