在MySql中为每个客户端创建一个数据库

时间:2011-07-23 10:54:26

标签: mysql database performance finance

我们有一个财务相关的应用程序,我们在其中为每个客户(公司)创建数据库(架构)。单个客户端会有很多行。

我想知道是否最好将数据保持分开(就像现在一样)或组合。我们正在为每台服务器寻找超过10000个数据库。

即使并非所有用户同时在线,也可以轻松购买10%的用户。

我的问题是...... 1)是否存在保留多个数据库的严重问题(性能明智)。 2)在涉及公司的财务数据时,通常的做法是保留不同的数据库。

1 个答案:

答案 0 :(得分:1)

“每台服务器10000个数据库” - 这是很多数据库! [假设每个数据库有5个用户,10%活跃,每个服务器仍有5000个活动用户连接]

暂且不说:这里主要关注的可能是每个客户数据库的安全性。将它们分开将使管理安全性变得更容易。

回答你的问题:

  1. 不,没有多个数据库的性能问题(除了服务器正在处理的大量事务)。事实上,在持有行范围锁的情况下可能会有性能提升。

  2. 是的,通常的做法是为财务数据保留单独的数据库。安全性,备份通常可以在每个公司的孤岛中得到更好的处理。