Dies ist der zweite Artikel in der Reihe Migrieren von SQL Server-Objekten mit SSDT 2017. In diesem Artikel erfahren Sie, wie Sie gespeicherte Benutzerprozeduren kopieren, die in der SQL Server-Masterdatenbank erstellt wurden.
Demo-Setup
Zur Demonstration habe ich das Ola-hallengren-Datenbankwartungsskript auf einer Master-Datenbank von Nisarg-PC \SQL01 ausgeführt. Hier können Sie die neueste Version der Wartungsskripte herunterladen. Diese Skripte erstellen einige gespeicherte Prozeduren und Tabellen. Sobald die Skripte erfolgreich ausgeführt wurden, können Sie sie anzeigen, indem Sie die folgende Abfrage ausführen.
1
|
Wählen Sie Name ab Master.sys.verfahren
|

Wir werden die obigen gespeicherten Prozeduren in die Master-Datenbank des Nisarg-PC \ SQL02-Servers migrieren.
Integration Service Package erstellen
Lassen Sie uns nun zunächst ein Integration Service Package erstellen. Öffnen Sie SSDT 2017 🡪 Klicken Sie auf Neues Projekt erstellen 🡪 Wählen Sie Integration Services-Projekt aus. Der Name des Projekts lautet Gespeicherte Prozeduren der Masterdatenbank migrieren.
Ziehen Sie die Aufgabe gespeicherte Masterprozedur übertragen und legen Sie sie auf der Oberfläche des Kontrollflusses ab.
Doppelklicken Sie auf Aufgabe für gespeicherte Übertragungsmaster-Prozeduren, um sie zu konfigurieren.
Um die gespeicherte Prozedur zwischen Instanzen zu übertragen, müssen wir die Quell- und Zielverbindungen konfigurieren. Klicken Sie dazu auf SourceConnection und wählen Sie Neue Verbindung. Lassen Sie uns zunächst sehen, wie wir die Quellverbindung konfigurieren können.
SourceConnection konfigurieren
Um die Verbindung zum Quellserver zu konfigurieren, klicken Sie auf SourceConnection und wählen Sie Neue Verbindung.
Geben Sie im Dialogfeld SMO Connection Manager Editor den Servernamen der Quelle und die Authentifizierungsmethode für die Verbindung mit SQL Server an. In unserer Demo lautet der Servername Nisarg-PC \ SQL01 und die Authentifizierungsmethode ist die Windows-Authentifizierung.

Klicken Sie auf OK, um die Verbindungseigenschaften zu speichern und das Dialogfeld zu schließen.
Configure DestinationConnection
Um die Verbindung für den Zielserver zu konfigurieren, klicken Sie auf DestinationConnection und wählen Sie Neue Verbindung.
Geben Sie im Dialogfeld SMO Connection Manager Editor den Servernamen der Quelle und die Authentifizierungsmethode für die Verbindung mit SQL Server an. In unserer Demo lautet der Servername Nisarg-PC \ SQL02 und die Authentifizierungsmethode ist die Windows-Authentifizierung.

Klicken Sie auf OK, um die Verbindungseigenschaften zu speichern und das Dialogfeld zu schließen. Der Abschnitt Verbindungen sieht wie folgt aus:

Im Abschnitt gespeicherte Prozedur erhalten Sie die folgenden Optionen:
- IfObjectExists: Wenn das Objekt, das wir übertragen, bereits vorhanden ist, können Sie eine der folgenden Aktionen auswählen, die vom Übertragungsmaster ausgeführt werden Gespeicherte Prozedur task
- FailTask: Wenn die gespeicherte Prozedur auf der Zielinstanz vorhanden ist, schlägt der Job fehl
- Überschreiben: Wenn die gespeicherte Prozedur auf dem Zielserver vorhanden ist, überschreibt die Aufgabe die vorhandene gespeicherte Prozedur
- Überspringen: Wenn die gespeicherte Prozedur auf dem Zielserver vorhanden ist, überspringt die Aufgabe die Übertragung dieser verfahren
- transferallgelagerte Verfahren: Wenn Sie alle benutzerdefinierten Speicherprozeduren übertragen möchten, wählen Sie True. Wenn Sie bestimmte gespeicherte Prozeduren übertragen möchten, wählen Sie False
- StoredProcedureList: Wenn Sie eine bestimmte gespeicherte Prozedur übertragen möchten, können Sie den SPs auswählen, den Sie übertragen möchten. Diese Option aktiviert, wenn Sie den falschen Wert für den Parameter TransferAllStoredProcedures
Wir möchten die Übertragung der vorhandenen gespeicherten Prozedur in unserer Demo überspringen. Wir möchten alle gespeicherten Prozeduren übertragen, wählen Sie daher True in der Option TransferAllStoredProcedures.

Der Task-Editor für gespeicherte Prozeduren des Übertragungsmasters sieht wie folgt aus:
Jetzt sollten wir benachrichtigt werden, wenn gespeicherte Prozeduren übertragen werden. Dazu konfigurieren wir die Aufgabe Operator benachrichtigen.
Notify Operator Task konfigurieren
Ziehen Sie zuerst die Notify Operator Task, legen Sie sie in der Control Flow-Oberfläche ab, benennen Sie sie um, um eine E-Mail zu senden, und doppelklicken Sie darauf.
Zuerst müssen wir die Verbindung zwischen dem Server konfigurieren, auf dem der Operator erstellt wurde. Klicken Sie dazu auf das Dialogfeld Neu in Operator benachrichtigen. Ein weiteres Dialogfeld, Eigenschaften verbinden, wird geöffnet. Geben Sie die entsprechenden Werte der folgenden Parameter an.
- Verbindungsname: Geben Sie den gewünschten Verbindungsnamen an. In unserer Demo habe ich es als SqlConnection
- Servername bezeichnet: Geben Sie den Servernamen an, auf dem der SQL Server-Operator erstellt wurde. Ich habe bereits einen Operator namens DBASupport in Nisarg-PC\SQL01
- Authentifizierungsmethode erstellt: Geben Sie die Authentifizierungsmethode an. In unserer Demo habe ich die Windows-Authentifizierung verwendet
Klicken Sie auf OK, um das Dialogfeld zu schließen.

Geben Sie den E-Mail-Betreff im Textfeld Betreff der Benachrichtigungsnachricht an. In unserer Demo lautet die Betreffzeile Status der Migration der gespeicherten Prozedur der Master-Datenbank.
Geben Sie den E-Mail-Text im Benachrichtigungstext an. In unserer Demo lautet der E-Mail-Text wie folgt:
Hallo DBASupport,
Die gespeicherte Prozedur der Master-Datenbank wurde erfolgreich übertragen.
Schließlich sieht die Notify Operator-Aufgabe wie folgt aus:

Die E-Mail muss gesendet werden, nachdem alle Jobs erfolgreich migriert wurden. Dazu müssen wir beide Aufgaben über einen Connector verbinden. Das Paket sieht wie folgt aus:
Die Aufgabe Gespeicherte Masterprozeduren übertragen wurde erfolgreich konfiguriert.
Zusammenfassung
Im zweiten Artikel dieser Serie haben wir über die Aufgabe Transfer Master Stored Procedures erfahren. Ich habe erklärt, wie wir es so konfigurieren können, dass die in der Masterdatenbank erstellte gespeicherte Benutzerprozedur mit SQL Server Data Tools (SSDT 2017) zwischen zwei Instanzen von SQL Server übertragen wird. Im nächsten Artikel erfahren Sie mehr über die Aufgabe Fehlermeldungen übertragen und erstellen Sie ein Paket in SSDT 2017, um die Fehlerprotokolle zwischen den beiden Instanzen von SQL Server zu migrieren.
Inhaltsverzeichnis
Übertragen von SQL-Jobs zwischen SQL Server-Instanzen mit SSDT 2017
Übertragen gespeicherter Prozeduren zwischen Masterdatenbanken auf SQL Server-Instanzen mit SSDT 2017
Übertragen von SQL-Anmeldungen zwischen SQL Server-Instanzen mit SSDT 2017
Übertragen von Fehlermeldungen zwischen SQL Server-Instanzen mit SSDT 2017
- Autor
- Neueste Beiträge

Er verfügt über Fachwissen in den Bereichen Datenbankdesign, Leistungsoptimierung, Sicherung und Wiederherstellung, HA- und DR-Einrichtung, Datenbankmigrationen und Upgrades. Er hat den B.Tech von der Ganpat University abgeschlossen. Er kann auf nisargupadhyay87 @outlook erreicht werden.kom

- Verschieben von Tabellen in eine andere Dateigruppe einer SQL-Datenbank – 14. Dezember 2021
- Konfigurieren von ODBC-Treibern für Oracle 19c – 9. Dezember 2021
- Konfigurieren eines verknüpften Servers zwischen SQL Server und PostgreSQL mithilfe von ODBC-Treibern – Dezember 6, 2021