web-dev-qa-db-ja.com

Azure SQLのジョブを作成するにはどうすればよいですか?

Azureサーバー(SQLデータベース用)用のジョブをいくつか作成しようとしています。

私はインターネットでそれについて読んでいて、成功しなかった質問をここで見つけようとしました。

マーケットプレイスで何かをダウンロードする必要があるというリンクがあります。私はそれを探してもそのようなアプリを見つけることができません。

SQL Serverで作成するときにジョブを作成する方法はありますか?

3
Racer SQL

VMでマネージドインスタンスまたはオンプレミスインスタンスではなくAzure SQL Serverを使用している場合、SQLエージェントジョブを作成しようとしています、その場合、次のことはできません。SQLエージェントジョブは、Azure SQLではサポートされていません。

Azure SQLでタスクを自動化する方法はいくつかあります。正式な方向性はElastic Database Jobsのようですが、この機能はまだプレビュー段階です。

もう少し詳しくは、次のリンクを参照してください。
https://docs.Microsoft.com/en-us/Azure/sql-database/sql-database-job-automation-overview
https://docs.Microsoft.com/en-us/Azure/sql-database/elastic-jobs-overview

[†] マネージドインスタンスまたはVM=インスタンスを使用している場合、または他の形式のジョブの作成を検討している場合は、それに応じて質問を編集してください。

4
David Spillett

Azure SQL DatabaseはSQLエージェントをサポートしていません。

ジョブの機能に応じて、つまりストアドプロシージャのみを呼び出す場合は、オンプレミスのSQLサーバーエージェントジョブまたはリンクサーバー経由のSQLマネージドインスタンスから実行できます。

  1. オンプレミスでリンクサーバーを作成する
  2. AzureでSPを呼び出すオンプレミスのSQLサーバーでジョブを作成します。

または、Azure Automationを使用できます: https://www.netwoven.com/2017/12/12/schedule-execution-sql-jobs-Azure-automation-service/

3

裸のAzure SQL Serverでは不可能です。できるだけPaaSになりたい場合は、前述のオプションが非常に優れています。

  • エラスティックジョブ
  • マネージドインスタンス上のSQLエージェント
  • Azureオートメーション

他のオプションもあります:

  • Azure Data Factory-オーケストレーターとして、スケジュールまたはBLOBイベントに基づいてストアドプロシージャとSQLコードを実行できます
  • Logic Apps-Azure SQL DBのコネクターを備えた非常にシンプルで強力なツール
  • Power Automate(Flow)-Logic Appsと非常によく似ていますが、Azureの外部、Office製品で利用でき、非テクニカルユーザーにとって使いやすい
  • 筋金入りのケースでは、App Servicesで実装できますが、それはやり過ぎです

私の経験から、Azure Data FactoryまたはLogic Appsが最適なオプションです。どちらを使用するかは、トリガーのニーズによって異なります。時間ベースの場合はADF、イベントベースの場合はLogic Appsの方が優れています。

2
shimon893