Enterprise Manager verlangt Diskette für Datensicherung

Frage:
Mit den Funktionen des Enterprise Managers soll eine Datenbank gesichert werden. Bei der Auswahl des Sicherungsziel verlangt der Enterprise Manager eine Diskette im Laufwerk, obwohl nicht auf einer Diskette gesichert werden soll. Erst nach Einlegen einer Diskette kann ein x-beliebiger Sicherungsort ausgewählt werden.

Lösung:
Das Problem liegt in der Version der SQLOLEDB.DLL.
Unter 319246 – FIX: Error Dialog Box During SQL Server Database Backup wird der Fall genauer beschriebe
n.

/* übernommen aus der Original sqlfaq.de */

Restore mit Wiederherstellung

Frage:
Nach einem Import von mehreren Datensätzen soll die Datenbank
wiederhergestellt werden – mit dem Stand vor dem Import .
Eine Vollsicherung wird jede Nacht durchgeführt, das Transaktionsprotokoll jede Stunde.
Wie können die Daten mit dem Stand vor dem Import wiederhergestellt werden?

Lösung:

1. Schritt – Restore der Vollsicherung
Bei der Wiederherstellung der Vollsicherung vom Vortag muss das SQL-Statement RESTORE unbedingt mit dem Zusatz NoRecovery ausgeführt werden, damit die Datenbank nach Beendigung des SQL-Statements den Prozess der Wiederherstellung nicht abschließt.
Um die aktuelle Datenbank zu überschreiben, muss zudem die Option
Replace angegeben werden.

Im Enterprise Manager ist die Option NoRecovery auf der Registerkarte Optionen unter Wiederherstellungsabschlussstatus zu finden. Hier muss für diesen Fall die Option Datenbank nicht weiter ausführen. Zusätzliche Transaktionsprotokolle können wiederhergestellt werden. aktiviert werden.
Für das Ãœberschreiben der Datenbank ist auf derselben Registerkarte die Option Wiederherstellung über vorhandene Datenbanken erzwingen zu aktivieren.


2. Schritt – Restore der Transaktionsprotokollsicherungen
Es muß mit der ersten Transaktionsprotokollsicherung nach der Vollsicherung begonnen werden. Bei jeder – ausgenommen der letzten – Wiederherstellung muß das RESTORE wieder mit der Option NoRecovery ausgeführt werden bzw. im Wiederherstellen-Dialog des Enterprise Managers die Option Datenbank nicht weiter ausführen. Zusätzliche Transaktionsprotokolle können wiederhergestellt werden. aktiviert sein.


3. Schritt – Abschluss
Bei der letzten Transaktionsprotokollsicherung ist das RESTORE mit der Option Recovery auszuführen.
Im Enterprise Manager ist hierfür die Option Datenbank weiter ausführen. Zusätzliche Transaktionsprotokolle können nicht wiederhergestellt werden. zu aktivieren.

/* übernommen aus der Original sqlfaq.de */

Fehler mit DB-Benutzer nach Wiederherstellung

Frage:
Ein Backup einer SQL Server-Datenbank wurde auf einem neuen Rechner erfolgreich wiederhergestellt.
Jedoch fehlen die Datenbankbenutzer. Eine Neuanlage der DB-Benutzer scheitert mit der Fehlermeldung, daß die Benutzer bereits existieren.

Lösung:
Die DB-Benutzer wurden durch die Wiederherstellung der Datenbank zwar angelegt, sind aber in der Datenbank unter Benutzer nicht sichtbar.
Daher wird eine Neuanlage mit einer Fehlermeldung quittiert.

Jeder DB-Benutzer müssen nachträglich mit der Procedure sp_change_users_login ‚Update_One‘, ‚username‘, ‚loginname‘ neu aktiviert werden. Bleibt die Neuaktivierung ohne Erfolg, hilft nur noch, jeden DB-Benutzer mit sp_dropuser ‚username‘ zu löschen und anschließend mit sp_adduser ‚loginname‘, ‚username‘, ‚rollenname‘ neu anzulegen.

/* übernommen aus der Original sqlfaq.de */

Fehler beim Wiederherstellen einer Datenbank

Frage:
Ein Backup einer Datenbank soll auf einem neuen Server wiederhergestellt werden. Die Wiederherstellung wird jedoch mit einem Fehler, in dem die Option With Move verlangt wird, abgebrochen.

Lösung:
Beim Wiederherstellen einer Datenbank möchte SQL Server die MDF- und die LDF-Datei der Datenbank in den Pfaden ablegen, in denen diese Dateien auch auf dem Ursprungsrechner gespeichert waren. Unterscheiden sich die Pfadangaben, kommt es zu dem beschriebenen Fehler.
Dieser kann vermieden werden, indem im Enterprise Manager-Dialog Datenbank wiederherstellen auf der Registerkarte Optionen das neue Zielverzeichnis für die MDF- und für die LDF-Datei angegeben wird.
In T-SQL bewirkt dies die Option With Move ‚logischerDateiname‘ To ‚physikalischerDateiname‘ beim RESTORE-Statement.

/* übernommen aus der Original sqlfaq.de */

Sicherungsdatei wird immer größer

Frage:
Die Sicherungsdatei wächst bei jeder Sicherung um
fast das Doppelte an.

Lösung:
Das Anwachsen der Sicherungsdatei liegt an der aktivierten Option An Medien anfügen.
Dadurch wird die aktuelle Sicherung immer an die vorherige angehängt.
Beim Einrichten einer SQL Server-Sicherung über den Enterprise Manager ist diese Option standardmäßig aktiviert. Als Alternative steht die Option Vorhandene Medien überschreiben zur Verfügung. Der Turnus, ab wann Sicherungen überschrieben werden, kann beim Einrichten der SQL Server-Sicherung auf der Registerkarte Optionen unter Sicherungssatz läuft ab definiert werden.

/* übernommen aus der Original sqlfaq.de */

Sicherungen aus Backup-Historie löschen

Frage:
Obwohl die Datenbank „test“ mitsamt aller Sicherungsdateien gelöscht wurde, wird sie innerhalb des Dialogs Wiederherstellen unter Parameter-Sicherungskopien der folgenden Datenbank anzeigen weiterhin aufgelistet. Nach der Auswahl der Datenbank stehen sogar die einzelnen Sicherungen zur Auswahl.

Lösung:
Im SQL Server 7.0 wird beim Löschen einer Datenbank nicht automatisch die Backup-Historie der Datenbank mitgelöscht.
Erst ab der Version 2000 ist es möglich, beim Löschen einer Datenbank auch die Backup-Historie zu löschen.
Die Backup-Historie ist in der Systemdatenbank msdb gespeichert. Mittels der Procedure sp_delete_backuphistory ältestesDatum werden die Einträge gelöscht.

/* übernommen aus der Original sqlfaq.de */

Backup auf externen Medien

Frage:
Eine Datenbank soll auf einem externen Medium gespeichert werden. Allerdings wird im Enterprise Manager nur das interne Bandlaufwerk oder die eigene Festplatte angezeigt.

Lösung:
Grundsätzlich bietet der Enterprise Manager nur lokale und konstante Laufwerke zur Auswahl an.
Beim SQL Server 7.0 kann eine Sicherung auf einem externen oder Wechselmedium nur über einen SQL Server-Auftrag ausgeführt werden. Dazu muss unter Verwaltung -> SQL-Server-Agent -> Aufträge ein Auftrag angelegt werden, der als Schritt das SQL-Statement Backup Database datenbank To Disk ‚laufwerkbuchstabe\pfad‘ beinhaltet. Die genaue Syntax von BACKUP ist in der Onlinehilfe zu finden.

/* übernommen aus der Original sqlfaq.de */

Backup auf Netzwerkpfad

Frage:
Das Datenbank-Backup soll auf einem Backup-Server im Netzwerk gesichert werden.
Der Enterprise Manager stellt aber nur die lokalen Laufwerke des SQL Servers zur Auswahl.

Lösung:
Für die Sicherung der Datenbank sollte ein Sicherungsmedium erstellt werden. Als Dateiname dieses Sicherungsmediums muß der UNC-Name (\\andererRechner\sicherungsverzeichnis\datenbank.bak) genutzt werden, damit das Netzlaufwerk erkannt wird.
Vorher ist zu prüfen, ob der Benutzer-Account, mit dem der Dienst des SQL Server-Agenten gestartet wird, auf Betriebssystemebene ausreichend Berechtigungen für den angegeben Pfad hat. Als Standardeinstellung nach der Installation ist dies beim SQL Server-Agent Local System. Die Rechte dieser Anmeldung reichen nicht aus, um das Backup auf einem Netzlaufwerk zu erstellen.

/* übernommen aus der Original sqlfaq.de */