创建Azure SQL数据库时的Azure自动化或Azure功能

时间:2017-11-13 05:06:06

标签: azure azure-sql-database azure-functions azure-automation

我们正在创建一个SaaS应用程序,每个客户端都有自己的数据库。我想自动创建客户端环境,这将从我们的网站触发。

我正在调查使用Azure自动化或Azure功能来创建我们的客户端数据库。

如果有人对这些工具有一些经验,我将非常感谢您的意见。

此致 Remeez

2 个答案:

答案 0 :(得分:3)

您尚未指定任何约束,因此有很多方法可以做到这一点。一种情况可能是:

  1. 从您的网站向队列发送消息。

  2. 创建一个Azure函数,该函数将侦听该队列,并运行脚本以创建新数据库。

  3. 确保您的数据库创建时间低于5分钟(最多10分钟),否则您将无法使用功能应用程序的消费计划。

答案 1 :(得分:1)

如果数据库对于所有客户都具有相同的架构,则可以使用作为模板的空数据库,然后发出CREATE DATABASE AS COPY,指定新数据库的层。

CREATE DATABASE db_copy   
    AS COPY OF ozabzw7545.db_original ( SERVICE_OBJECTIVE = 'P2' )  ;

考虑使用具有弹性作业的弹性池,以后可以帮助您自动执行所有客户数据库上的常见任务。使用弹性池,您也可以创建数据库副本。

CREATE DATABASE db_copy   
    AS COPY OF ozabzw7545.db_original   
    (SERVICE_OBJECTIVE = ELASTIC_POOL( name = ep1 ) ) ;

您还可以使用REST API创建数据库或数据库副本,如here所述。