2

可能重复:
MySQL 中的最大表数

单个数据库应包含推荐数量的表。此外,在您的应用程序中打开多个连接是否有任何缺点。

我目前正在开发的应用程序可以访问很多表,或者有可能访问很多表。我想将表拆分到不同的数据库中,因为我没有这方面的经验,我希望有人能指出我正确的方向。

4

3 回答 3

3

在所有可能的情况下,最好在需要时处理将表拆分为单独数据库的必要性。

你说很多表有多少?100、200、1000 - 也许最后一个可能需要单独的数据库,但前提是它具有明确的优势。

我的建议是你看看为什么你需要这么多表,首先,你可以用更少的表和更多的行来做。

于 2012-05-23T17:03:55.510 回答
2

如果您使用的是 MyISAM,则表的最大数量受操作系统/文件系统的限制。这是操作系统在目录中允许的最大文件数,因为这些表在文件系统上存储为单独的文件。

对于 InnoDB,限制似乎是40 亿

拥有多个打开的连接有利有弊。你想做什么?要记住的一件事是 MySQL 服务器将接受的连接数是有限制的。

于 2012-05-23T15:48:16.247 回答
1

单个连接中的所有查询都被序列化。这通常使编程更简单,特别是如果一个命令需要完成前一个命令。如果您添加多个连接,您最终可能会在相同情况下出现竞争条件。

由于 MySQL 不支持嵌套事务,因此有时需要创建另一个连接才能完成事务中的事务。

于 2012-05-23T17:40:40.930 回答