我正在开发一个Web应用程序,需要用户拥有自己的私有数据。我的原始计划是创建一个存储表,一个用户表和一个用户存储交叉表。然后我会在存储表中保存该店铺的数据库名称(并使用应用程序用户和密码创建每个特定于店铺的数据库,以便Web应用程序可以始终登录)。
每个商店将拥有类似的数据(用户、产品、运输方式等),我知道我可以使用外键引用来在一个庞大的数据库中将它们联系在一起。然而,由于数据非常具体且可能是专有的,使用我的原始设计还是使用单个数据库存储每个人的数据更好?
我考虑到扩展的问题,分离的数据库可能会更好,因为我们可以将更活跃的账户放在它们自己的(或更强大的)数据库服务器上,并在存储表中简单地添加一个服务器位置字段,如果需要的话。此外,这样做可能更安全,因为我们可以将用户登录信息添加到数据库中,并只给他们访问其数据的权限(防止一个用户编辑另一个用户的内容)。我的问题是,是否有我忽略的问题?几乎每篇关于这个问题的文章都说不要使用我考虑的方法,我也不是DBA。任何意见都会有帮助。
附加信息: 这将托管在我将拥有根访问权限的专用服务器上。我可以创建所需数量的MySQL数据库。
每个商店将拥有类似的数据(用户、产品、运输方式等),我知道我可以使用外键引用来在一个庞大的数据库中将它们联系在一起。然而,由于数据非常具体且可能是专有的,使用我的原始设计还是使用单个数据库存储每个人的数据更好?
我考虑到扩展的问题,分离的数据库可能会更好,因为我们可以将更活跃的账户放在它们自己的(或更强大的)数据库服务器上,并在存储表中简单地添加一个服务器位置字段,如果需要的话。此外,这样做可能更安全,因为我们可以将用户登录信息添加到数据库中,并只给他们访问其数据的权限(防止一个用户编辑另一个用户的内容)。我的问题是,是否有我忽略的问题?几乎每篇关于这个问题的文章都说不要使用我考虑的方法,我也不是DBA。任何意见都会有帮助。
附加信息: 这将托管在我将拥有根访问权限的专用服务器上。我可以创建所需数量的MySQL数据库。