Sichern und Wiederherstellen Ihrer SQL Server-Datenbank über die Befehlszeile

Inhaltsverzeichnis:

Video: Sichern und Wiederherstellen Ihrer SQL Server-Datenbank über die Befehlszeile

Video: Sichern und Wiederherstellen Ihrer SQL Server-Datenbank über die Befehlszeile
Video: Soziale Netzwerkanalyse (einfach erklärt) 🌐🔍 2024, März
Sichern und Wiederherstellen Ihrer SQL Server-Datenbank über die Befehlszeile
Sichern und Wiederherstellen Ihrer SQL Server-Datenbank über die Befehlszeile
Anonim

Der wichtigste Teil eines SQL Server-Wartungsplans ist das regelmäßige Sichern Ihrer Datenbanken. Um eine Datenbank zu sichern, können Sie die entsprechenden MDF- und LDF-Dateien der Datenbank nicht einfach kopieren, da diese von SQL Server gesperrt sind. Stattdessen müssen Sie eine echte Sicherungsdatei über SQL Server erstellen.

Während dies durch die Entwicklung eines Wartungsplans innerhalb von SQL Management Studio durchgeführt werden kann, bieten die kostenlosen Express-Editionen von SQL Server diese Schnittstelle nicht. Um dies zu umgehen, können Sie Ihre Datenbanken problemlos sichern, indem Sie den folgenden Befehl ausführen, während Sie als Windows-Administrator angemeldet sind:

SqlCmd -E -S Server_Name –Q “BACKUP DATABASE [Name_of_Database] TO DISK=’X:PathToBackupLocation[Name_of_Database].bak'”

Die Beispiele unten helfen.

Standard-SQL Server-Instanz:

SqlCmd -E -S MyServer –Q “BACKUP DATABASE [MyDB] TO DISK=’D:BackupsMyDB.bak'”

Benannte SQL Server-Instanz:

SqlCmd -E -S MyServerMyInstance –Q “BACKUP DATABASE [MyDB] TO DISK=’D:BackupsMyDB.bak'”

Erstellen Sie eine vollständig wiederherstellbare Sicherungskopie von "MyDB" in der Datei "D: BackupsMyDB.bak", die für die Notfallwiederherstellung verwendet werden kann. Natürlich können Sie den Sicherungspfad und die Sicherungsdatei beliebig ändern. Stellen Sie jedoch sicher, dass Sie einen Ordnerpfad angeben, der auf dem lokalen Computer vorhanden ist. Diese Sicherungsdatei kann dann auf ein Bandlaufwerk oder einen anderen externen Sicherungsspeicherort kopiert werden.

Eine häufig gestellte Frage lautet: „Kann eine Sicherungsdatei auf einem zugeordneten Laufwerk oder einem UNC-Speicherort erstellt werden?“Und die schnelle Antwort lautet Nein. Der Grund ist, dass der SQL Server-Windows-Dienst als Benutzerkonto ausgeführt wird, das nur Zugriff auf den lokalen Computer hat. Sie können das Konto ändern, unter dem der Dienst ausgeführt wird. Dies wird jedoch aus Sicherheitsgründen dringend empfohlen.

Wiederherstellen einer Datenbanksicherung über die Befehlszeile

Um eine Datenbank aus einer Sicherungsdatei wiederherzustellen, verwenden Sie einfach den Befehl:

SqlCmd -E -S Server_Name –Q “RESTORE DATABASE [Name_of_Database] FROM DISK=’X:PathToBackupFile[File_Name].bak'”

Zum Beispiel:

SqlCmd -E -S MyServer –Q “RESTORE DATABASE [MyDB] FROM DISK=’D:BackupsMyDB.bak'”

Der obige Befehl stellt eine Sicherung von "MyDB" aus den Daten wieder her, die in der Sicherungsdatei "D: BackupsMyDB.bak" gespeichert sind. Alle an MyDB seit der Erstellung der Sicherungsdatei vorgenommenen Änderungen gehen verloren.

Beachten Sie bei der Verwendung des obigen Befehls, dass er auf demselben SQL-Server verwendet werden soll, auf dem die entsprechende Sicherungsdatei erstellt wurde. In SQL-Sicherungsdateien werden Informationen hinter den Kulissen gespeichert, die steuern, wo und wie die Datendateien in der Sicherungsdatei kopiert werden. Wenn Sie eine Sicherung von einem anderen SQL Server wiederherstellen, stimmen die Pfadpositionen in der Sicherungsdatei möglicherweise nicht mit dem Server überein, auf dem Sie die Wiederherstellung durchführen, und es wird ein Fehler angezeigt. Dies lässt sich zwar umgehen, es ist jedoch viel einfacher, Sicherungen, die auf einem anderen SQL Server erstellt wurden, mithilfe des SQL Management Studio-Tools wiederherzustellen.

Hinweis: Die obigen Befehle funktionieren ab SQL 2005 (beliebige Edition). Ersetzen Sie bei SQL 2000 und früheren Versionen "SqlCmd" durch "oSql".

Empfohlen: