Datenbankentwickler sollten keine gespeicherten Prozeduren oder Testanwendungen auf einem Produktionsserver erstellen. Stattdessen wird eine SQL-Datenbank auf einer Testumgebung eingerichtet. Die Entwickler erstellen jedoch mehrere gespeicherte Prozeduren und Tabellen auf dem Entwicklungsserver. Das Verschieben dieser Objekte kann eine mühsame Aufgabe sein. Microsoft SQL Server verfügt über einen Assistenten, mit dem Datenbankadministratoren Skripts für die neuen Objekte und die Daten erstellen können. Die Skripte können auf dem Zielrechner ausgeführt werden, wodurch die Übertragung der Objekte und Daten zu einem schnellen Prozess wird.

Wie man eine SQL-Datenbank kopiert: Daten von einem Server auf einen anderen übertragen
Wie man eine SQL-Datenbank kopiert: Daten von einem Server auf einen anderen übertragen

Kopieren einer SQL-Datenbank in die Skriptdatei

Standardmäßig erstellt der SQL-Datenbankserver nur Skripte für die Tabellen- und Stored-Procedure-Objekte. Wenn Sie Daten übertragen möchten, müssen Sie die Option im Skripting-Assistenten einstellen. Diese Schritte skripten alle Objekte und Daten und sie kopieren eine SQL-Datenbank zur Überprüfung in das Konsolenfenster, bevor Sie sie auf dem Produktionsserver ausführen.

  1. Klicken Sie mit der rechten Maustaste auf die zu kopierende SQL-Datenbank. Wählen Sie in der Liste der Optionen “Tasks” und dann “Skripte erzeugen”.
  2. Klicken Sie im Eröffnungsbildschirm auf die Schaltfläche “Weiter”. Im nächsten Fenster wird der Administrator gefragt, welche SQL-Datenbank geskriptet werden soll. Obwohl die Datenbank zu Beginn ausgewählt wurde, fragt der SQL-Server erneut nach der Datenbankauswahl. Drücken Sie die Schaltfläche “Weiter”.
  3. Blättern Sie nach unten zum Abschnitt “Tabellen-/Anzeigeoptionen”. Beachten Sie in diesem Abschnitt das Einblendfeld neben “Skriptdaten”. Wählen Sie “Wahr”. Diese Option weist den Skript-Assistenten an, die SQL-Daten zusammen mit den Tabellen aufzunehmen. Klicken Sie auf die Schaltfläche “Weiter”.
  4. Wählen Sie die Objekte für das Skript aus. Um eine SQL-Datenbank zu kopieren, sind die gespeicherten Prozeduren, Tabellen, Trigger und Ansichten die grundlegenden Komponenten. Aktivieren Sie alle Kontrollkästchen, um alle Daten der Datenbank zu übertragen. Klicken Sie auf die Schaltfläche “Weiter”.
  5. Wählen Sie die zu übertragenden Tabellen aus. Um Probleme mit den übertragenen Daten zu vermeiden, ist es am besten, alle Tabellen zu übertragen, die auf dem Produktionsserver verwendet werden. Achten Sie darauf, dass Sie keine Tabellen auf dem Produktionsserver überschreiben, sonst können Sie versehentlich Produktionsdaten löschen, was in der Regel ein Problem ist, das eine vollständige Wiederherstellung der SQL-Datenbank erfordert. Klicken Sie auf die Schaltfläche “Weiter”.
  6. Wählen Sie “Skript zum Fenster “Neue Abfrage””. Mit dieser Option kann der Administrator die Daten und den Code innerhalb des SQL Management Studio-Fensters anzeigen.

Führen Sie das Transfer-SQL-Skript auf dem Produktionsserver aus

Überprüfen Sie die vom SQL-Server erstellte Datei. Wenn die Datenbank sehr viele Informationen enthält, kann diese Datei sehr lang sein. Schalten Sie den Fokus des SQL-Servers im Management Studio auf den Produktionsserver um. Wenn noch keine Verbindung hergestellt wurde, klicken Sie auf die Schaltfläche “Verbinden”. Kopieren Sie das neue Skript in ein Abfragefenster für den Produktionsserver. Drücken Sie die Taste F5, um das Skript auszuführen. Es kann einige Minuten dauern, bis das Skript ausgeführt wird, aber sobald es fertig ist, wird eine SQL-Datenbank kopiert.

Verwenden Sie diese Methode, um eine SQL-Datenbank schnell zu kopieren. Dies ist für kleinere Datenbanken von Vorteil. Wenn die SQL-Tabellen Millionen von Datensätzen enthalten, könnte das Abfragefenster überfordert sein und die Management Studio-Konsole könnte abstürzen. Der Administrator kann jedoch immer noch Tabellen einzeln kopieren und die Daten später übertragen.