一尘不染

使用多个数据库与使用单个数据库的优缺点

sql-server

我正在做一个需要使用 7 个数据库的新项目,认为性能、稳定性、优化更容易实现。

虽然我不同意,但我在收集使用单个数据库的好论据(将表拆分为逻辑域)时遇到了麻烦。

到目前为止,我的一个论点是数据完整性(我不能在数据库之间使用外键)。

使用单个或多个数据库有哪些优点/缺点?

[到目前为止的总结]

针对多个数据库的论点:

  • 失去数据完整性(不能在数据库上使用外键)
  • 失去恢复完整性
  • 增加复杂性(数据库用户/角色)
  • 小概率服务器/数据库将关闭

解决方案:

  • 使用模式来分隔域。
  • POC:使用虚拟数据证明 7/1 db 执行计划中的要点

阅读 102

收藏
2022-11-14

共1个答案

一尘不染

性能、稳定性、优化都不是真的。有没有人有一个可靠的论据或参考文章为什么这些是真的?

资源未分配给数据库:SQL Server 实例平衡资源,因此没有区别

你输了:

  • 数据的完整性
  • 恢复完整性(DB7 中的数据将在 DB1 之后)

您获得了复杂性:

  • 安全性(用户、角色等)必须在所有数据库中
  • 您将有一些数据不能很好地放入 1 个数据库中

选项:

  • 可以使用文件组将数据库拆分到单独的磁盘上
  • 使用模式在逻辑上分离数据(基于其他答案)
2022-11-14