我正在研究使用每个客户端模型一个数据库的SaaS应用程序。它还有一个共同的“帐户”数据库,其中保留了有关帐户的一些基本信息,并提供了登录功能。
我的问题 - 是否值得为每个客户端数据库创建新数据库用户,该客户端数据库仅对该数据库具有权限,或者对所有客户端数据库具有访问权限的单个数据库用户更有意义(即“account\_%
。*”) ?
答案 0 :(得分:4)
如果担心安全问题,那么每个数据库的用户就是一种方法。
答案 1 :(得分:2)
我会创建新数据库,但这取决于。基本上无论漂浮你的船:)
每个用户一个数据库:
+安全性更容易
+异步并行请求(如果您的服务器可以处理它)
- 磁盘上有点重
一个数据库:
+一个文件来处理而不是一堆(如果那甚至是+)
+更节省空间
- 数据达到大量时慢
- 没有同时连接意味着来自一个用户的重sql请求将使所有其他
答案 2 :(得分:2)
很容易考虑创建所有这些数据库。
但是请考虑从长远来看如何维护它们。
我不是说不要创建多个数据库。我只是建议你考虑后果。