我々が使用しているソリューションは、このようなものです:
SSISパッケージにOracleのクエリをラップし、クエリの後、パッケージが処刑の歴史、または単にいずれかを保持するSQLテーブルを更新していジョブが正常に実行された最後の時刻を追跡する単一行。要するに、Oracleクエリが成功した場合、クエリが今日正常に実行されたことを示すテーブルに何かを挿入します。それが成功しなかった場合は、今日のためにテーブルに何も入れないでください。
次に、Oracleクエリーの前に、パッケージの開始時に、クエリーが今日正常に実行されたかどうかを確認します。すでに正常に実行されている場合は、何もせずにパッケージを終了します。それが今日正常に実行されていない場合は、上記のクエリー後の手順に従って、実行してみてください。パッケージがいつ実行されるべきかについての他の条件(「午前10時以降」など)がある場合は、そのロジックをここに含めます。
最後に、ジョブをスケジュールしてパッケージを呼び出し、15分ごとに実行するようスケジュールを設定します。それは正常に実行されるまで15分ごとに試行され、その後は翌日まで何もしなくなります。
この同じパッケージとジョブを使用して、同じ方法で処理するすべてのタスクを開始することができます。履歴/メタデータテーブルにこれらすべてのタスクに関するメタデータを保存するだけで済みます。
接続のトラブルシューティングを試みます。成功のためにジョブを何度も呼び出す場合は、それに応じて再試行を構成できます。 – TharunRaja
接続不良の問題を解決しようとします。そのようにする必要はありません。他の解決策はちょうどハックと粘着性の石膏です。 – ADyson
この手順の再試行と再試行の間隔を設定できます。詳しくは、こちらを参照してください。https://docs.microsoft.com/en-us/sql/ssms/agent/job-step-properties-new-job-step-advanced -ページ – sepupic