我正在编写一个应用程序,该应用程序将作为服务和独立应用程序提供。它用 Zend Framework 编写并使用 MySQL。
在将其作为服务提供时,我希望用户在我的网站上注册并拥有诸如 customer1.mysite.com、customer2.mysite.com 之类的子域。
我希望将所有内容都放在一个数据库中,而不是为每个用户创建新数据库。
但现在我想知道如何做得更好。我想出了两个解决方案: 1. 在每个表中都有用户 ID,然后将其添加到每个数据库请求的 WHERE 子句中。2. 重新创建具有唯一前缀的表,例如“customer1_tablename”、“customer2_tablename”。
哪种方法更好?优点和缺点?是否有另一种方法可以将同一数据库上的用户分开?
莱昂蒂