Sql 在何处放置多租户数据库设计的注册逻辑?

Sql 在何处放置多租户数据库设计的注册逻辑?,sql,sql-server,database,multi-tenant,Sql,Sql Server,Database,Multi Tenant,我目前正在将单租户应用程序转换为多租户应用程序 就数据库设计而言,我选择了文章中描述的“共享数据库,独立模式”解决方案 遵照提供的指示;每次引入新租户时,我都需要执行以下步骤: 为租户创建新架构。 创建新的数据库用户,该用户可以访问新创建的模式A,并且只能访问此模式。 在新创建的架构中创建必要的表。 我的问题是,这种逻辑应该放在哪里 我最初的想法是在一个存储过程中,但是我不确定这个决定,并希望得到一些澄清。我希望您也从部署的角度来研究这个实现 考虑到在Sql中执行作业会更快,甚至会引发租户创建的

我目前正在将单租户应用程序转换为多租户应用程序

就数据库设计而言,我选择了文章中描述的“共享数据库,独立模式”解决方案

遵照提供的指示;每次引入新租户时,我都需要执行以下步骤:

为租户创建新架构。 创建新的数据库用户,该用户可以访问新创建的模式A,并且只能访问此模式。 在新创建的架构中创建必要的表。 我的问题是,这种逻辑应该放在哪里


我最初的想法是在一个存储过程中,但是我不确定这个决定,并希望得到一些澄清。

我希望您也从部署的角度来研究这个实现

考虑到在Sql中执行作业会更快,甚至会引发租户创建的事件,该事件可以运行将创建必要的db基础设施的作业。最后,作业将调用应用程序的一个rest端点来激活租户,以便租户可以进入应用程序并使用


在该方法中有许多选项需要考虑,因为它将是完全分布式的,并且容易发生故障。

存储过程很好,这就是我的建议。它当然需要去某个地方。进入管理模式或其他数据库。程序员会建议你把它放到应用程序中。