0

我浏览了整个网络,我找到了不同的答案,但有几个具体的问题。

我有一个拥有大约 5400 名活跃会员的网站,有点 Facebook 的感觉。我有 10 个 MySQL 数据库,一个数据库包含一个“users”表和一个“User_stats”表。下一个数据库包含“照片”和“照片评论”等,用于博客、状态更新等。每个数据库中大约有 4-5 个表。我认为最大的表中有大约 250,000 行。

几年前,我将它们分成不同的数据库,因为我的共享主机遇到了限制。我现在有一个虚拟服务器,所以我没有这些限制。

我想知道,当我的代码加载到页面上时,打开一个 MySQL 连接、关闭它、打开一个到另一个数据库、关闭它等是否更好,或者如果我将所有表放入一个数据库中,我会打开页面开头的连接并在底部关闭它。

由于拉取照片、最近的博客条目、用户数据等,加载个人资料页面可能会在页面加载结束时连接到所有 10 个数据库。

我担心扩大规模,并认为如果我将它们全部放在 1 个数据库中,那么它会比打开和关闭这么多连接更容易。

你觉得呢?你有没有什么想法?

4

1 回答 1

0

只要所有数据库都托管在同一个 MySql 实例中,单个客户端连接就可以查询任何/所有数据库。

例子:

/*Query #1*/
SELECT FirstName, LastName
FROM userdb.users
WHERE UserID = ?

/*Query #2*/
SELECT PhotoName, Height, Width
FROM photodb.photos
WHERE PhotoID = ?

关闭和重新打开每个数据库的连接不是要走的路。

于 2012-07-17T18:05:14.820 回答