【发布时间】:2012-04-17 12:38:29
【问题描述】:
我正在 django [mysql] 中创建一个必须可扩展的站点,所以我的问题是对于具有相同类型数据的多个用户来说,什么更好
每个用户有一个数据库,还是有一个大的单体数据库?
请建议为此首选的设计模式?
谢谢!
【问题讨论】:
标签: mysql database django database-design schema
我正在 django [mysql] 中创建一个必须可扩展的站点,所以我的问题是对于具有相同类型数据的多个用户来说,什么更好
每个用户有一个数据库,还是有一个大的单体数据库?
请建议为此首选的设计模式?
谢谢!
【问题讨论】:
标签: mysql database django database-design schema
通常,您对具有相同表架构的多个用户使用单个数据库,除非您的要求要求您创建多个数据库。特别是,如果您为每个用户拥有相同类型的数据,则您必须在应用程序端而不是在数据库端处理访问权限和其他事情。
Django 有一个很好的用户身份验证/授权系统,它可以让您定义权限并让您控制用户访问权限(创建新记录、更新现有记录和删除记录),这些数据由表中的表表示你的系统。您还可以根据需要定义自定义权限来控制访问权限。
【讨论】:
单独的数据库几乎从来都不是正确的答案,但在某些情况下它是合适的。除非您有非常特殊的需求,并且没有任何关于您的项目的真实描述,否则单个数据库可能是正确的决定。
【讨论】: