1

我正在建立一个 MySQL 数据库,但我不确定构建它的最佳方法:

我正在建立一个系统(基于 PHP/MySQL),其中数百人将对数据库执行 SELECT/UPDATE/SET/DELETE 查询(可能同时执行大约 50 个)。我想如果它们都使用相同的数据库和表,将会有几千行。我可以将数据拆分到多个表中,但是我必须确保它们都是统一的,并且作为管理员,我将通过 cron 运行一些 SELECT DISTINCT 查询来更新管理界面。

解决这个问题的最佳方法是什么?我可以让每个人共享一个数据库吗?一张桌子?当有几千行时会不会有问题?我想随着时间的推移会有一个巨大的性能问题。

欢迎任何提示或建议!

4

1 回答 1

3

只要您的服务器足够强大,MySQL/php 就可以轻松处理这个问题。MySQL 喜欢 RAM,并且会尽可能多地使用 RAM(在您提供的限制范围内)。

如果您将有很多并发用户,那么我建议您考虑使用 innodb 表而不是 MyISAM(MySQL 版本 <5.5 中的默认值)。Innodb 在执行 INSERT/UPDATE/DELETE 等操作时会锁定单个行,而不是像 MyISAM 那样锁定整个表。

我们使用 php/MySQL,并且我们的网站上同时有 1000 多个用户(我们的主数据库服务器每秒执行大约 4k 次查询)。

于 2012-05-02T04:59:43.060 回答