2017-05-08 3 views
1

SSISパッケージに「Execute SQL Task」コンポーネントがあります。'Execute SQL Task'コンポーネント実行サーバー(SQL Server Integration Services)を検索します。

Connection manager: 'Server A' 
Database: Finance_Warehouse 
SQL Query: SELECT batch_date FROM Finance_Warehouse.etl_audit WHERE 
    curr_batch_ind IS NULL 
SSIS Package: Runs from Server B 

私の質問:私は 'サーバーB' でSSISパッケージを実行すると、コンポーネントSQLクエリの実行 'SQLタスクの実行' をだろうか?サーバーAまたはサーバーB?

また、(このコンポーネント/ SQLクエリが実行されているサーバーの)確認方法を教えてください。

私は、SQL Serverが「サーバーA」にインストールされているため、「サーバーA」上で動作しますが、専門家からの回答は確かです。事前に

おかげで、

アッシュ

トレースの詳細:

trace details

+1

のConnectionManagerは、特定のデータベースを指している、あなたのクエリがそのデータベース上で実行されます:

SELECT sqltext.TEXT, req.session_id, req.status, req.command, req.cpu_time, req.total_elapsed_time FROM sys.dm_exec_requests req CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS sqltext 

は、リンクを参照してください。 – observer

+0

コメントありがとうございます。実行されている場所を確認するオプションはありますか?レポート/ログなど? – Ash

+0

SELECT db_name(); – observer

答えて

1

これはサーバーAで実行されます。パッケージ実行時にプロファイラ/トレースを実行すると表示されます。

(または)

また、DMVのを使用することができます。パッケージに実行中のクエリが表示され、次にクエリが実行されているサーバーが表示されている場合は、パッケージが実行されている間に、サーバーAまたはサーバーBで以下のクエリを実行します。 https://blog.sqlauthority.com/2009/01/07/sql-server-find-currently-running-query-t-sql/

+0

こんにちは、応答ありがとう。私はトレースを実行し、クエリが実行されている場所を理解しようとしました。 ServerNameまたはHostNameを調べるべきですか?スクリーンショットを添付することはできません。だから、私の主な質問にそれを付けました。また、サーバーAとサーバーBの両方のCPUを同時に監視する方法はありますか? – Ash

+0

HostName - クエリが実行されているコンピュータの名前。 –

+0

DMVコードを追加してメインポストを編集しました。 –

0

それはあなたの仕事のバイパスプロパティを設定する方法によって異なります。

"BypassPrepare"プロパティをtrueに設定すると、接続するデータベースエンジンによってクエリの準備(解析)が行われることを意味します。それ以外の場合は、統合サービスパッケージによって準備が行われます。

+0

ありがとうございます。さて、それはクエリを解析するためのものです。私は、クエリが実行されている場所を知る証拠を探しています。 – Ash

関連する問題