私はDBA(および多くの場合、事実上のsysadmin)であるため、SQL Serverは、定期的に作業する必要があるほとんどすべてのサーバーにインストールされます。最近、ネイティブWindowsタスクスケジューラではなく、ほとんどすべての場合にジョブスケジューラとしてSQLエージェントを使用していることに気付きました。
私の観点から見ると、SQLエージェントには、ネイティブのWindowsタスクスケジューラーよりも多くの利点があります。
- リモート(私のワークステーションから)タスクの開始/停止/監視
- 共有スケジュール(各タスク自体ではなく)
- 複数のステップと制御フロー
- さまざまな種類のタスク
- 失敗/完了のアラート
- 異なるユーザーとして動作するように構成できます
- (中程度)エラーコードではなく、説明的なエラーメッセージ
しかし、これは悪い習慣であるという感覚から逃れることはできません-SQLエージェントはデータベース関連のタスクのためだけに予約する必要があり、その使いやすさを嫌いながらも、WindowsレベルのタスクスケジューラでOSレベルのタスクを実行したままにする必要があります。
この方法でSQLエージェントに依存しても大丈夫ですか?そうでない場合、探している機能の一部を取得するために、サードパーティのWindowsタスクスケジューラを検討する必要がありますか?