2017-05-08 3 views
1

Ich habe eine Komponente 'SQL-Task ausführen' im SSIS-Paket.Finden Sie 'Execute SQL Task' Komponentenausführungsserver (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 

Meine Frage: Wenn ich SSIS-Paket in 'Server B' ausführen, wo 'Task' SQL ausführen' Komponente SQL Query ausführen? Server A oder Server B?

Wie überprüfe ich auch, (auf welchem ​​Server diese Komponente/SQL-Abfrage ausgeführt wird)?

Meine Annahme ist, dass es auf "Server A" läuft, wie SQL Server in "Server A" installiert ist, aber auf der Suche nach bestätigter Antwort von Experten.

Vielen Dank im Voraus,

Ash

Trace Details:

trace details

+1

Connectionmanager zeigt auf eine bestimmte Datenbank, Ihre Abfrage auf der Datenbank ausgeführt wird. – observer

+0

Vielen Dank für den Kommentar. Gibt es eine Option zu sehen, wo es ausgeführt wird? ein Bericht/Protokoll usw.? – Ash

+0

SELECT db_name(); – observer

Antwort

1

Es wird in Server A ausgeführt, Sie können dies anzeigen, indem Sie den Profiler/Trace zum Zeitpunkt der Ausführung des Pakets ausführen.

(oder)

Sie können auch DMV verwenden. Führen Sie die folgende Abfrage in Server A oder Server B aus, während das Paket ausgeführt wird. Wenn das Ergebnis die Abfragen anzeigt, die sich im Paket befinden, ist dies der Server, auf dem die Abfrage ausgeführt wird.

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 

Siehe Link-: https://blog.sqlauthority.com/2009/01/07/sql-server-find-currently-running-query-t-sql/

+0

Hallo, danke für die Antwort. Ich habe eine Ablaufverfolgung ausgeführt und versucht zu verstehen, wo die Abfrage ausgeführt wird. Sollte ich in ServerName oder HostName suchen? Ich kann hier keinen Screenshot anhängen. Also, habe es an meine Hauptfrage angehängt. Gibt es eine Möglichkeit, die Server A- und Server B-CPUs gleichzeitig zu überwachen? – Ash

+0

HostName - Name des Computers, auf dem die Abfrage ausgeführt wird. –

+0

Bearbeitete den Hauptbeitrag durch Hinzufügen von DMV-Code. –

0

Es hängt davon ab, wie Sie die ByPass Eigentum Ihrer Aufgabe gesetzt.

Einstellung "BypassPrepare" -Eigenschaft auf True bedeutet, Vorbereitung (Parsing) Abfrage erfolgt durch die Datenbank-Engine, die Sie verbinden. Ansonsten erfolgt die Vorbereitung über das Integration Services Package.

+0

Vielen Dank für die Antwort. Nun, es ist für die Analyse der Abfrage. Ich suche nach Beweisen, um zu sehen, wo die Abfrage ausgeführt wird. – Ash

Verwandte Themen