我正在开发一个项目管理应用程序,每个公司(使用我们的应用程序)都会有一个个人子域:company.domain.com。由于许多原因,我决定为每家公司使用单独的数据库。
公司可以邀请人们(通过电子邮件)共同开展项目。一个用户可以属于多个公司(因此应该出现在多个数据库中)。但是,用户数据和登录信息存储在单独的数据库中,因为每个公司的用户使用相同的用户名、密码以及他们的名字,每个公司的姓氏都相同。
我现在做的事情如下:
- 存在一个单独的数据库:用户、身份(user_id、用户名、密码)。
- 在每个公司的每个数据库中也存在一个用户表,包含关于用户的相同数据(实际上只有 3 个字段:名字、姓氏、时区)。
有没有更好的解决方案?如果您对此问题有疑问:) 请询问。
我正在使用 php + mysql。