Microsoft SQL Server-Datenbank oder verschlüsselte SQL-Daten bereitstellen

In diesem Abschnitt wird beschrieben, wie Sie erfasste Microsoft SQL-Server einbinden:

  • Instanzen
  • Primäre Datenbanken einer AlwaysOn-Verfügbarkeitsgruppe
  • Konsistenzgruppen
  • Einzelne Mitglieder einer Konsistenzgruppe
  • Systemdatenbanken
  • Nutzerdatenbanken

Erfasste Microsoft SQL Server-Daten einbinden

Mit einer Standardbereitstellung können Sie die Microsoft SQL Server-Daten auf einem anderen Server bereitstellen, wo sie von einer anderen Microsoft SQL Server-Instanz abgerufen und verwendet werden können. So binden Sie nur die erfassten Microsoft SQL-Daten ein:

  1. Öffnen Sie den App Manager und rufen Sie die Anwendungsliste auf.

  2. Klicken Sie mit der rechten Maustaste auf eine SQL Server-Instanz, eine Nutzerdatenbank, eine Systemdatenbank, einen Cluster oder eine Verfügbarkeitsgruppe und wählen Sie Zugriff aus. Verwenden Sie die Filter, um die benötigte Datenbank zu finden.

  3. Wählen Sie auf der Startbahn das einzubindende Bild aus und klicken Sie dann auf Einbinden.

  4. Geben Sie optional ein Label ein, mit dem Sie diese bereitgestellten Daten eindeutig identifizieren können.

  5. Wählen Sie im Dialogfeld Image bereitstellen im Abschnitt Anwendungsoptionen nicht Neue virtuelle Anwendung erstellen aus. Informationen zum Einbinden der Microsoft SQL-Daten als virtuelle Datenbank finden Sie unter SQL Server-Datenbank als neue virtuelle Datenbank einbinden.

  6. Füllen Sie gegebenenfalls die Felder Mapping Options (Zuordnungsoptionen) und Item Selection (Artikelauswahl) aus.

    Die angezeigten Optionen variieren je nach ausgewählter Quelle. Für Datenbanken auf VMware-VMs gibt es beispielsweise die Option Allen ESX-Hosts zuordnen. Für geclusterte Datenbanken ist die Option Clusterknoten zuordnen verfügbar.

  7. Klicken Sie auf Senden. Der Mount-Job wird gesendet.

  8. Wenn der Mount-Vorgang erfolgreich war, melden Sie sich auf dem Datenbankserver an und prüfen Sie, ob das gemountete Image in Active Mounts (Aktive Mounts) verfügbar ist.

SQL Server-Datenbank als neue virtuelle Datenbank einbinden

Bei einem Mount-Vorgang für eine virtuelle Anwendung wird eine erfasste Datenbank als virtuelle Anwendung bereitgestellt. So können Sie eine Datenbank schnell online bringen, ohne die Daten tatsächlich verschieben und eine neue Instanz der Datenbank manuell konfigurieren zu müssen. Ein virtuelles Anwendungs-Mount löst die Herausforderungen beim Erstellen und Verwalten von Kopien von Produktionsdatenbanken ohne manuellen Eingriff durch Datenbank-, Server- und Speicheradministratoren.

In diesem Abschnitt wird beschrieben, wie Sie eine erfasste Microsoft SQL Server-Datenbank als virtuelle Anwendung einbinden. Sie können Folgendes für Microsoft SQL Server einbinden:

  • Instanzen
  • Systemdatenbanken
  • Nutzerdatenbanken
  • Konsistenzgruppen
  • Einzelne Mitglieder einer Konsistenzgruppe
  • Datenbanken in AlwaysOn-Verfügbarkeitsgruppen

Bevor Sie ein Image einhängen, müssen Sie sicherstellen, dass iSCSI auf dem Host konfiguriert wurde, auf dem die Images eingehängt werden, oder dass NFS-Datenspeicher in VMware konfiguriert wurden.

Wenn Sie nur die Microsoft SQL-Datendateien einbinden möchten, ohne einer SQL Server-Instanz eine Datenbank hinzuzufügen, lesen Sie den Abschnitt Erfasste Microsoft SQL-Daten einbinden.

Bei beschädigten oder gelöschten Datenbanken ist das Mounten einer SQL Server-Datenbank als virtuelle Anwendung auf dem ursprünglichen Server eine effiziente Alternative zum Wiederherstellen der Datenbank.

So stellen Sie eine erfasste Microsoft SQL Server-Datenbank als virtuelle Anwendung bereit:

  1. Öffnen Sie die Managementkonsole und rufen Sie den App-Manager > die Liste Anwendungen auf.

  2. Klicken Sie mit der rechten Maustaste auf eine SQL Server-Instanz, eine Nutzerdatenbank, eine Systemdatenbank, einen Cluster oder eine Verfügbarkeitsgruppe und wählen Sie Zugriff aus. Verwenden Sie die Filter, um die benötigte Datenbank zu finden.

  3. Wählen Sie auf der Bildlaufleiste das Bild aus, das eingeblendet werden soll. Wählen Sie rechts Einbinden aus. Mit dem Kalender-Widget oben links können Sie den Bereich der gesicherten Bilder eingrenzen.

  4. Geben Sie im Abschnitt Anwendungsoptionen optional ein Label ein, mit dem Sie diese eingebundenen Daten eindeutig identifizieren können.

  5. Wählen Sie Create New Virtual Application (Neue virtuelle Anwendung erstellen) aus.

  6. Wenn die Datenbank zusammen mit ihren Logs erfasst wurde, bietet das Dialogfeld App-Optionen eine Option, die Logs auf einen bestimmten Zeitpunkt zurückzusetzen. Dies hängt davon ab, wann und wie oft Logs erfasst wurden.

  7. Wählen Sie in der Drop-down-Liste SQL Server-Instanzname die SQL Server-Instanz aus, in die die neue Datenbank eingefügt werden soll. Wenn der erforderliche Instanzname nicht im Drop-down-Menü enthalten ist, können Sie ihn manuell in das dafür vorgesehene Feld eingeben.

  8. Wenn Sie eine einzelne Datenbank einbinden, geben Sie im Feld SQL Server-Datenbankname einen Namen für die neue virtuelle Datenbank ein.

    Wenn Sie mehrere Datenbanken einbinden, geben Sie im Feld Name of Consistency Group (Name der Konsistenzgruppe) einen Namen für eine neue Konsistenzgruppe ein, die Ihre virtuellen Datenbanken enthält.

  9. Die Einbindung der virtuellen Anwendung ist eine neue virtuelle Datenbank. Um die neuen virtuellen Datenbanken zu schützen, wählen Sie Manage New Application (Neue Anwendung verwalten) aus und wählen Sie die Vorlage und das Profil aus, die verwendet werden sollen.

    Die Einbindung der virtuellen Anwendung ist eine neue Datenbank. Die Snapshots der Datenbank sind inkrementell.

    Die virtuelle Anwendung wird in der Liste der Anwendungen im Application Manager angezeigt.

    Wenn Sie Neue Anwendung verwalten nicht auswählen, wird sie im Application Manager als ungeschützte Anwendung angezeigt. Sie kann wie jede andere Anwendung geschützt werden.

    Virtuelle SQL Server-Datenbanken, die in eine SQL Server-Instanz eingebunden sind, werden immer separat von den Nutzer- und Systemdatenbanken der Instanzen geschützt.

  10. Datenbank nach der Wiederherstellung wiederherstellen: Lassen Sie diese Option ausgewählt (Standard), wenn Sie die Datenbank in einen Online-Status versetzen möchten, in dem Transaktionen verarbeitet werden können. Deaktivieren Sie diese Option, um die Datenbank im Wiederherstellungsstatus zu belassen, damit zusätzliche Transaktionslog-Backups manuell angewendet werden können, um die Datenbank auf einen bestimmten Zeitpunkt zurückzusetzen.

  11. Nutzeranmeldungen wiederherstellen: Wenn Sie die Richtlinienoption SQL Server-Anmeldungen sichern aktiviert haben, werden die Anmeldungen in der SQL Server-Zielinstanz wiederhergestellt, wenn Sie diese Option auswählen. Bei Domainkonten werden die Nutzerkonten nur wiederhergestellt, wenn sich die Zielinstanz auf einem Server in derselben Domain oder in einer Domain mit einer Vertrauensstellung zur Quell-SQL Server befindet. Lokale SQL-Konten werden immer wiederhergestellt. Verwenden Sie diese Option, wenn Sie sicherstellen möchten, dass alle Nutzer, die auf die ursprüngliche Quelldatenbank zugreifen konnten, auch auf die neue virtuelle Datenbank zugreifen können.

  12. Geben Sie in den Feldern Nutzername und Passwort nur bei Bedarf einen Nutzernamen und ein Passwort ein. Wenn das Backup and DR-Agent-Konto nicht die Berechtigungen hat, die Datenbank während eines Unmount-Vorgangs zu trennen oder Transaktionsprotokolle anzuwenden, geben Sie hier Anmeldedaten für ein Konto mit diesen Berechtigungen ein. Weitere Informationen finden Sie unter Erforderliche SQL Server-Rollen für den Windows-Nutzer.

  13. Wählen Sie ein Wiederherstellungsmodell aus, wenn Sie das Wiederherstellungsmodell der neuen virtuellen Datenbanken ändern möchten. Standardmäßig wird das Wiederherstellungsmodell der ursprünglichen Datenbank beibehalten.

  14. Geben Sie für Overwrite Existing Database (Vorhandene Datenbank überschreiben) an, wann eine Datenbank auf dem Zielserver oder der Zielinstanz mit demselben Namen wie die neuen Datenbanken, die bereitgestellt werden, überschrieben werden soll: Yes (Ja), No (Nein) oder Only if it's Stale (Nur wenn sie veraltet ist).

  15. Unter Mapping Options (Kartenoptionen) können Sie einen Mount Location (Montageort) eingeben. Wenn eine Anwendung nur ein Volume hat, können Sie hier nur den Mount-Speicherort angeben. Wenn eine Anwendung mehrere Volumes hat, können Sie:

    • Geben Sie einen Mount-Pfad ein. Alle Volumes werden automatisch am angegebenen Mount-Speicherort gemountet. Dabei werden sequenzielle Laufwerkbuchstaben oder nummerierte Verzeichnisse am angegebenen Mount-Punkt verwendet.

    • Lassen Sie diesen Bereich leer und geben Sie unter Erweiterte Optionen manuell einen Bereitstellungspfad für jedes Volume an.

  16. Klicken Sie auf Senden. Der Job wird gesendet.

  17. Wenn der Mount-Job abgeschlossen ist, melden Sie sich auf dem Datenbankserver an und prüfen Sie, ob das gemountete Image unter Aktive Mounts verfügbar ist.

Verwaltung der aktiven Bereitstellungen

Nachdem Sie ein Mount erstellt haben, können Sie das Image über den App-Manager > Aktive Mounts verfolgen. Idealerweise sollte kein Image auf unbestimmte Zeit gemountet bleiben. Das liegt daran, dass das Sicherungs-Image, aus dem die Bereitstellung erstellt wurde, erst ablaufen kann, wenn alle zugehörigen Bereitstellungen gelöscht wurden. Wenn Sie das bereitgestellte Image nicht mehr benötigen, haben Sie folgende Möglichkeiten:

  • Heben Sie die Bereitstellung des Images auf. Sie können es bei Bedarf wieder einbinden. Sie können das Image dann später löschen, wenn Sie sicher sind, dass es nicht mehr benötigt wird.
  • Trennen und löschen Sie das Image. Dadurch wird das bereitgestellte Image gelöscht, nicht die Sicherung, auf der die Bereitstellung basiert.
  • Migrieren Sie das Bild. Dies gilt nur für Microsoft SQL Server-Bereitstellungen.

Verschlüsselte SQL Server-Daten einbinden

Sicherungs-/Wiederherstellungsgeräte erfassen verschlüsselte SQL Server-Datenbanken, aber nicht die zugehörigen privaten Schlüssel, Verschlüsselungszertifikate oder Passwörter.

In diesem Abschnitt wird Folgendes beschrieben:

  • Ermitteln, ob SQL TDE aktiviert ist

  • Fehlerbehebung bei der SQL Server-Verschlüsselung

  • SQL Server-Masterschlüssel, Verschlüsselungszertifikat und Passwortverfahren

Wenn Sie eine verschlüsselte SQL Server-Datenbank über einer vorhandenen SQL Server-Datenbank wiederherstellen, sind der private Schlüssel, das Verschlüsselungszertifikat und das Passwort bereits in der SQL Server-Instanz vorhanden. Nach Abschluss des Wiederherstellungsvorgangs funktioniert die SQL Server-Datenbank wie erwartet.

Wenn Sie eine virtuelle Anwendungsbereitstellung einer verschlüsselten Datenbank oder eine Bereitstellung nur der verschlüsselten SQL Server-Daten durchführen, muss die SQL Server-Instanz, auf der die verschlüsselte Datenbank oder die verschlüsselten Daten bereitgestellt werden, Folgendes haben:

  • Transparente Datenverschlüsselung (Transparent Data Encryption, TDE) aktiviert

  • Eine Kopie des privaten Schlüssels aus der SQL Server-Quelldatenbank

  • Eine Kopie des Verschlüsselungszertifikats aus der SQL Server-Quelldatenbank

  • Passwort der SQL Server-Quelldatenbank angeben

Die Verfahren finden Sie unter „SQL Server-Masterschlüssel, Verschlüsselungszertifikat und Passwortverfahren“.

Prüfen, ob SQL Server TDE aktiviert ist

Wenn Sie feststellen möchten, ob TDE für eine SQL Server-Instanz aktiviert ist, können Sie die Benutzeroberfläche von Microsofts SQL Server Management Studio (SSMS) oder eine manuelle Abfrage verwenden, um zu ermitteln, ob die Verschlüsselung für eine Datenbank aktiviert ist. Beispiel:

        SELECT
         DB_NAME(database_id)AS dbname,
         encryption_state,
         case encryption_state
           WHEN 0 THEN 'Unencrypted (no
        database encryption key present)'
           WHEN 1 THEN 'Unencrypted'
           WHEN 2 THEN 'Encryption in Progress'
           WHEN 3 THEN 'Encrypted'
           WHEN 4 THEN 'Key Change in Progress'
           WHEN 5 THEN 'Decryption in Progress'
           ELSE CAST(encryption_state AS
        varchar(20))
         END AS encryption_state,
         key_algorithm,
         key_length
         FROM sys.dm_database_encryption_keys

SSMS

So stellen Sie mit SSMS fest, ob die Verschlüsselung für eine Datenbank aktiviert ist:

  1. Klicken Sie in SSMS mit der rechten Maustaste auf den Datenbanknamen.

  2. Wählen Sie im Drop-down-Menü Eigenschaften aus. Die Eigenschaften der Datenbank werden angezeigt.

  3. Klicken Sie unter Seite auswählen auf Optionen. Die Optionen für die Datenbank werden angezeigt.

  4. Prüfen Sie unter Status, ob Verschlüsselung aktiviert auf Wahr gesetzt ist.

Fehlerbehebung bei der SQL Server-Verschlüsselung

Im Folgenden sind zwei häufig auftretende Fehler aufgeführt:

  • SQL-Fehler 24583: Dies weist auf ein fehlendes Verschlüsselungszertifikat hin. Der folgende SQL Server-Fehler 24583 gibt an, dass Sie versuchen, eine Bereitstellung für eine SQL Server-Instanz durchzuführen, die nicht über das Verschlüsselungszertifikat der Quell-SQL Server-Instanz verfügt.

  • SQL-Fehler 33117: Die transparente Datenverschlüsselung ist nicht aktiviert. Der folgende SQL Server-Fehler 33117 weist darauf hin, dass Sie versuchen, eine verschlüsselte SQL Server-Datenbank in eine SQL Server-Instanz einzubinden, in der Transparent Data Encryption (TDE) nicht aktiviert ist.

SQL Server-Masterschlüssel, Verschlüsselungszertifikat und Passwortverfahren

Das Erstellen und Kopieren von Hauptschlüsseln und Verschlüsselungszertifikaten sind Standardverfahren für Microsoft SQL Server, die nicht nur für Sicherungs-/Wiederherstellungsgeräte gelten. Sie werden hier nur zur besseren Übersicht bereitgestellt:

  • Neuen Masterschlüssel erstellen

  • Neues Verschlüsselungszertifikat erstellen

  • Server-Masterschlüssel und Verschlüsselungszertifikat anwenden

  • Kopie des Server-Masterschlüssels und des Verschlüsselungszertifikats erstellen und Quellpasswort angeben

  • Verschlüsselungszertifikat, privaten Schlüssel und Quellpasswort kopieren

Weitere Informationen finden Sie in den detaillierten Informationen von Microsoft zu Sicherheitszertifikaten und ‑schlüsseln: https://msdn.microsoft.com/en-us/library/ff848768.aspx

Neuen Masterschlüssel erstellen

        use master;
        go
        create master key encryption by password = 'SMKSourcePassword';
        go

Neues Verschlüsselungszertifikat erstellen

        use master;
        go
        create certificate sourcedbcert with subject = 'Act Test Cert';
        go

Server-Masterschlüssel und Verschlüsselungszertifikat anwenden

        use DATABASENAME;
        go
        CREATE DATABASE ENCRYPTION KEY
        WITH ALGORITHM = AES_128
        ENCRYPTION BY SERVER CERTIFICATE sourcedbcert;
        go
        alter database DATABASENAME
        set encryption on;
        go

Kopie des Server-Masterschlüssels und des Verschlüsselungszertifikats erstellen und Quellpasswort angeben

Wenn eine SQL Server-Datenbank auf einer SQL Server-Instanz auf einer anderen SQL Server-Instanz bereitgestellt wird, müssen Sie den Hauptserverschlüssel, das Verschlüsselungszertifikat und das Passwort der bereitzustellenden Datenbank manuell kopieren. Kopieren Sie dann den Server-Masterschlüssel, das Verschlüsselungszertifikat und das Passwort in die andere SQL Server-Instanz.

So erstellen Sie eine Kopie eines Server-Masterschlüssels, eines Verschlüsselungszertifikats und eines Passworts:

        use master;
        go
        backup certificate sourcedbcert to file = 'E:\Enc\Sourcecert'
        with PRIVATE KEY (file='E:\Enc\Privatekey',
        ENCRYPTION BY PASSWORD='SecurePassword');
        go

Verschlüsselungszertifikat und privaten Schlüssel kopieren und Quellpasswort angeben

Wenn eine verschlüsselungsfähige SQL Server-Datenbank oder Daten in eine neue SQL Server-Instanz eingebunden werden, muss die neue Instanz eine Kopie des Serverhauptschlüssels, des Verschlüsselungszertifikats und des Passworts der Quell-SQL Server-Instanz haben. Kopieren Sie das Verschlüsselungszertifikat und die Passwortkopien, die Sie im vorherigen Abschnitt in der Quell-SQL Server-Instanz erstellt haben, manuell in die neue SQL Server-Instanz. Führen Sie auf der neuen SQL Server-Instanz die folgenden Schritte aus:

        create certificate destinationdbcert
        FROM file = 'C:\Program Files\Backup and DR\sqlenc\Sourcecert'
        with private key (file = 'C:\Program Files\Backup and DR\sqlenc\Privatekey',
        decryption by password = 'SecurePassword')
        go

Weitere Dokumentation zu Backup and DR für Microsoft SQL Server

Diese Seite ist eine von mehreren Seiten, die sich speziell mit dem Schutz und der Wiederherstellung von Microsoft SQL Server-Datenbanken und unterstützenden Binärdateien mit Backup and DR befassen. Weitere Informationen finden Sie auf den folgenden Seiten: