Konfigurieren des SQL Server 2008-Protokollversands

Konfigurieren des SQL Server 2008-Protokollversands

Ich versuche, die Protokollübermittlung von einem Cluster aus zwei Windows Server 2008 R2 x64-Computern mit SQL Server 2008 R2 an einen einzelnen Computer mit demselben Betriebssystem und derselben Datenbank zu konfigurieren. Das Setup scheint ordnungsgemäß zu verlaufen (keine Fehler), aber zum geplanten Zeitpunkt erhalte ich das folgende Fehlerpaar im SQL Server-Ereignisprotokoll des primären Computers:

BACKUP Der Befehl BACKUP LOG MyDb konnte nicht abgeschlossen werden. Überprüfen Sie das Backup-Anwendungsprotokoll auf detaillierte Meldungen

Fehler: 3041, Schweregrad 16, Status 1

Fragen: 1. Wo ist das „Backup-Anwendungsprotokoll“? 2. Wie finde ich heraus, was Fehler 3041 ist?

SQL Server und der SQL Server-Agent werden auf dem primären und sekundären Server unter einem Domänenkonto ausgeführt. Ich habe auf dem sekundären Server eine Freigabe als \secondary\SqlLogShipData erstellt, dem Domänenkonto die volle Kontrolle erteilt und zwei Unterverzeichnisse hinzugefügt: Backup und Destination.

Beim Konfigurieren des Protokollversands habe ich \secondary/SqlLogShipData\Backup als Netzwerkpfad zum Sicherungsordner und für den sekundären Ordner \secondary\SqlLogShipData\Destination als Zielordner für kopierte Dateien angegeben.

Ich habe den Sicherungsordner auf dem sekundären Server abgelegt, da der primäre Server ein Cluster ist und ich möchte, dass die Protokollübermittlung funktioniert, wenn einer der Knoten aktiv ist. Ich habe auch versucht, ein lokales Verzeichnis für den primären Server anzugeben, aber das hat keinen Unterschied gemacht.

Es gibt keine relevanten Fehler im SQL-Ereignisprotokoll des sekundären Servers.

Ich vermute, dass es sich um ein Berechtigungsproblem handelt, aber ich bin mir nicht sicher, warum. Ich wäre für jede Hilfe dankbar, die Sie mir geben können.

Antwort1

Die Konfiguration von Log Shipping auf einem Cluster ist ziemlich unkompliziert. Ich habe es schon oft verwendet.

Bevor wir beginnen, müssen Sie unbedingt das vorhandene Log Shipping-Setup entfernen, da es nicht funktioniert. Entfernen Sie das sekundäre und dann das primäre.

Voraussetzungen

Lassen Sie uns zunächst einige Voraussetzungen klären.

  • Befindet sich die Datenbank im VOLLSTÄNDIGEN Wiederherstellungsmodell?
  • Wurde eine VOLLSTÄNDIGE Sicherung erstellt?
  • Haben Sie einen LOG-Backup-Job eingerichtet? Wenn ja, entfernen Sie diese Datenbank unbedingt aus diesem Job. Log Shipping übernimmt die LOG-Backups für Sie.

Primäre Einrichtung

OK, versuchen wir nun, die Einrichtung Ihres Log Shipping durchzugehen.

Versuchen Sie zunächst, Log Shipping Primary zum Laufen zu bringen.

Gehen Sie zurück zu Ihren Datenbankeigenschaften und aktivieren Sie "Als primäre Datenbank aktivieren" und klicken Sie dann aufBackup-EinstellungenTaste.

Hier müssen Sie zwei Dinge angeben: den Netzwerkpfad zu Ihren LOG-Backups und den lokalen Pfad dazu.

Auf meinem Server sieht es ungefähr so ​​aus:

  • C:\SQL Backups\LS
  • \MeinServer\LS

Berechtigungen für den Protokollversandordner

Suchen Sie anschließend diesen Ordner im Windows Explorer, klicken Sie mit der rechten Maustaste, wählen Sie Eigenschaften und wählen Sie die Registerkarte Berechtigungen. Hier müssen Sie Ihr primäres SQL Agent-Dienstkonto hinzufügen und sicherstellen, dass es über Lese- und Schreibberechtigungen für diesen Ordner verfügt.

Wählen Sie als Nächstes die Registerkarte „Freigabe“ aus. Hier müssen Sie den Ordner freigeben und sicherstellen, dass das sekundäre SQL Server-Dienstkonto über Leseberechtigungen für die Freigabe verfügt.

Testen Sie die Log Shipping-Backups

Sobald Sie dies eingerichtet haben, testen wir Ihre Log Shipping-Backups. Sehen Sie in den SQL Agent-Jobs nach und Sie sollten etwas mit dem Namen LSBackup_YourDatabase sehen.

Klicken Sie mit der rechten Maustaste auf den Job und führen Sie ihn aus. Eventuelle Fehler hängen höchstwahrscheinlich mit Ordner- und Freigabeberechtigungen zusammen. Posten Sie die Details.

Konfigurieren Sie den Sekundärteil erst, wenn dieser Teil funktioniert.

Initialisieren Sie den sekundären

Nachdem Sie den Log Shipping-Sicherungsauftrag mehrere Male ohne Fehler ausgeführt haben, führen Sie Ihren VOLLSTÄNDIGEN Sicherungsauftrag noch einmal aus.

Kopieren Sie das VOLLSTÄNDIGE Backup und stellen Sie es auf Ihrem sekundären Server wieder her. Verwenden Sie unbedingt NORECOVERY.

Sekundäres Setup

Gehen Sie zurück zu den Datenbankeigenschaften und zum Abschnitt „Protokollversand“. Klicken Sie im Bereich „Sekundäre Datenbanken“ auf „Hinzufügen“. Stellen Sie eine Verbindung zu Ihrem sekundären Server her.

Wählen Sie auf der Registerkarte „Initialisieren“ „Nein, das Sekundärgerät ist initialisiert“.

Geben Sie auf der Registerkarte „Kopieren“ den lokalen Ordner auf dem sekundären Server ein, in den die Log Shipping-Sicherungsdateien kopiert werden sollen. Stellen Sie sicher, dass das sekundäre SQL Agent-Dienstkonto über Lese- und Schreibberechtigungen für diesen Ordner verfügt.

Testen der Kopier- und Wiederherstellungsaufträge

Führen Sie den Kopierauftrag auf dem sekundären Server aus. Eventuelle Fehler hängen höchstwahrscheinlich mit dem Ordner und seinen Berechtigungen zusammen. Veröffentlichen Sie die Details. Protokollieren Sie den Auftragsverlauf. Verwenden Sie die integrierten Protokollversandberichte, um zu sehen, wie weit der Auftrag fortgeschritten ist.

Sobald der Kopierauftrag funktioniert, fahren Sie mit dem Wiederherstellungsauftrag fort. Dieselben Testschritte.

Viel Glück!

Antwort2

Versuchen Sie, eine zusätzliche Clusterfestplatte zum Sichern zu erstellen, falls beim Schreiben auf eines der lokalen Laufwerke des Knotens Probleme auftreten. Auf diese Weise sollte der Protokollversand immer funktionieren. Andernfalls sichern Sie den Protokollversand von einem anderen separaten Remoteserver und stellen Sie ihn wieder her.

verwandte Informationen