問題
リモートサーバーに正常に展開したETLプロセス用のSSISパッケージを開発しました。私は、このサーバーのWindowsとSQLログインを持っていますが、管理者はありません。このETLプロセスがロードするデータは、毎日早朝に別のドメインの別のマシンで生成されるため、できるだけ早くデータ生成プロセス後に自動的にロードする必要があります。リモートでプログラムでSSISパッケージを実行
現在、SSMSでETLパッケージを手動で実行し、runas.exe
でSSMSを起動して、リモートサーバー上のWindowsユーザー資格情報をなりすますことでこれを認証します。私たちが初期の開発段階に入っているので、現在のところこれは大丈夫ですが、これは明らかに本番環境では容認できる解決策ではありません。したがって、私はこのプロセスを自動化したいと思います。なぜなら、a)データは非常に時間に敏感であり、b)このプロセスを手動で実行することはPITAです。
私は、ETLパッケージの実行を自動化して行く必要がありますどのような:
実行はデータが利用可能である直後に発生し、
んが、ユーザー入力が私などから必要とされませんパスワードを入力するには?スケジュール上のSQL Serverエージェントジョブをスケジュール
未遂ソリューション
ための時間感度を、オプションではありません。 runas.exe
をそのまま使用する
の必要性を妨げる必要です/netonly
フラグ、および/savecred
フラグ、など、いずれかのオプションではありません(また、私のシステム管理者は、SQL Serverエージェントが無効/有効にしていないようです)手動のパスワード入力は、相互に排他的です。
sqlcmd.exe
SQLユーザーとパスワードを使用してスクリプトを実行することができます(パスワードはプレーンテキストで入力するのが賢明ですが、SSISパッケージを呼び出すストアドプロシージャを実行すると失敗します) 。
時間の敏感さが問題ではない場合(それはそうではありません)、エージェントを有効にするためにDBAを取得できますか?それが正しい解決策だからです。 –