Ich habe einen MSSQL Express-Server, der auf einer VM ausgeführt wird. Der von mir verwendete Hosting-Anbieter bietet die Möglichkeit, Laufwerks-Snapshots zu erstellen. Der Server läuft ständig und wird während der Laufwerkssicherung nicht gestoppt. Backup hat keine speziellen Funktionen in Bezug auf MSSQL. Besteht das Risiko, dass die Datenbank möglicherweise nicht wiederhergestellt wird, wenn ich meine Datendateien auf einem solchen Laufwerk behalte und im Falle einer Notfallwiederherstellung Snapshots verwende?
sql-server
backup
Justinas Simanavicius
quelle
quelle
Antworten:
In der Regel werden Server-Sicherungsprogramme über den Windows Volume Shadow Copy Service (VSS) mit SQL Server koordiniert, um sicherzustellen, dass SQL Server die Datenbankdateien in einen konsistenten Zustand versetzt, bevor Volume-Snapshots erstellt werden. Mindestens Sicherungsprogramme sollten Sicherungen erstellen, die pro Volume konsistent sind.
Selbst in einer Unternehmensumgebung, in der vertrauenswürdige Fachleute Server-Backups mit einer Konfiguration durchführen, die Sie überprüfen können, sind nur sehr wenige Datenbankadministratoren tatsächlich auf Server-Backups angewiesen. Denken Sie daran, dass Backups allein irrelevant sind. Wiederherstellungen sind das, was Sie wirklich interessiert.
Wie führen Sie eine Wiederherstellung durch, wenn Sie sich auf Server-Backups verlassen? Nicht einfach, das ist sicher.
Nehmen Sie also Backups. Laden Sie sie dann regelmäßig von Ihrem Hoster herunter oder laden Sie sie auf einen Cloud-Speicheranbieter hoch, z.
quelle
Während Sie auf jeden Fall die Punkte beachten sollten, die David Browne hervorhebt, habe ich den Laufwerks-Snapshot- Ansatz für Sicherungen verwendet und kleine SQL-Datenbanken erfolgreich wiederhergestellt. Aber sehen Sie sich die Vorbehalte am Ende meiner Antwort an - ich wäre sehr vorsichtig, wenn ich dies in einer großen Datenbank versuchen würde.
Mit den meisten Sicherungssoftware dieses Typs können Sie die Sicherung als virtuelles Laufwerk bereitstellen. Nach dem Mounten können Sie die MDF-Datei einfach zurückkopieren. Sie können entweder einfach den SQL Server-Dienst beenden, die Originaldatei (en) ersetzen und dann neu starten oder die MDF-Datei als neue Datenbank anhängen und ausgewählte Daten daraus zurückkopieren.
Aber:
Ich habe dies bisher nur für kleine Datenbanken verwendet, die auf einfache Protokollierung eingestellt sind. In diesem Zusammenhang würde klein die Größe bedeuten, die SQLExpress unterstützt, sodass dies für Ihr System gilt. Wenn ich diese Art der Sicherung verwende, verwende ich die einfache Protokollierung, da die von uns verwendete Sicherungssoftware alle 15 Minuten einen Schnappschuss erstellt, sodass ich eine ziemlich gute Granularität habe, ohne dass eine vollständige Protokollierung erforderlich ist.
Ich verwende diesen Ansatz hauptsächlich für kleine SQL-Datenbanken, die von Apps verwendet werden. Viele Endbenutzer-Apps verwenden heutzutage SQLExpress als Datenspeicher, genau wie vor einigen Jahren viele Apps Access MDB-Dateien verwendet haben. Unter diesen Umständen neige ich dazu, die Datenbank so anzuzeigen, wie ich jede andere Datendatei anzeigen würde. Sie sagen nicht, wofür Ihre Datenbank verwendet wird, daher kann ich Ihnen nicht raten, wie gut dies für Sie funktionieren würde. Es gelten die üblichen Hinweise für Sicherungen: Testen Sie Ihre Sicherungen regelmäßig, um sicherzustellen, dass Sie sie wiederherstellen können.
quelle
Ich stimme allen oben von David Browne erwähnten Punkten zu und möchte hier einen weiteren relevanten Punkt hinzufügen. Da Sie kein Wiederherstellungsmodell der Datenbank angegeben haben, gehe ich davon aus, dass es sich um den vollständigen Wiederherstellungsmodus handelt. Dies bedeutet, dass mit jeder Transaktionsprotokollgröße weiter wächst, bis sie die gesamte Festplatte belegt (es sei denn, Sie haben die Größe des automatischen Protokollinkrements begrenzt).
Sobald Sie eine Protokollsicherung durchgeführt haben, geschieht Folgendes :
Wenn Sie einen Snapshot der Festplatte erstellen, wird das Protokoll im SQL Server niemals gelöscht. Darüber hinaus verfügen Sie über die Funktion der komprimierten Sicherung, die hilfreich sein kann, um die Größe der Sicherung wirklich klein zu halten. Im Katastrophenfall können Sie mithilfe der vollständigen, differenziellen und Protokollsicherung eine Wiederherstellung zu einem bestimmten Zeitpunkt erreichen.
Eine weitere Sache, die Sie hier hinzufügen sollten: Im Allgemeinen speichern DBAs die Sicherung auf einem anderen Speicher und nicht auf demselben Speicher, auf dem sich Daten oder Protokolldateien befinden. Falls Ihre Daten- oder Protokolldatei abstürzt, sind Sie dennoch sicher, da auf einem anderen Speicher Sicherungen verfügbar sind.
Ich hoffe oben hilft.
quelle