INFO: Verschieben von SQL Server 7.0-Datenbanken auf einen neuen Server mit BACKUP und RESTORE

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 304692 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
304692 INF: Moving SQL Server 7.0 Databases to a New Server with BACKUP and RESTORE
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt, wie Sie Datenbanksicherungen für Benutzer und Systeme auf einer anderen SQL Server 7.0-Installation wiederherstellen, die eine andere Laufwerkbuchstabenkonfiguration als der Server hat, auf dem Sie die Datenbanken ursprünglich gesichert haben. Sie können diese Methode verwenden, wenn Sie eine Datenbank mithilfe von Datenbanksicherungen oder Datenbankwiederherstellungen verschieben möchten. Weitere Informationen zum Verwenden einer Alternativmethode finden Sie im folgenden Artikel der Microsoft Knowledge Base:
224071 SQL Server-Datenbanken mithilfe von Detach/Attach an einen neuen Speicherort verschieben
Hinweis: Die Anleitungen in diesem Artikel gelten nicht für SQL Server 2000.

Sie können die master-, model-, msdb- oder Verteilungsdatenbank von SQL Server 7.0 nicht auf SQL Server 2000 wiederherstellen. SQL Server 7.0-Systemdatenbanken sind mit SQL Server 2000 nicht kompatibel.

Weitere Informationen

Die Beispiele in diesem Artikel basieren auf den folgenden Annahmen:
  • Die Zielinstallation von SQL Server 7.0 befindet sich im Verzeichnis "D:\Mssql7", und die Datenbank- und Protokolldateien befinden sich im Standardverzeichnis "D:\Mssql7\Data".
  • Die Quellinstallation von SQL Server 7.0 befindet sich im Verzeichnis "C:\Mssql7", und die Datenbank- und Protokolldateien befinden sich im Standardverzeichnis "C:\Mssql7\Data".

Voraussetzungen

  • Erstellen Sie eine aktuelle Sicherung aller Datenbanken an ihrem aktuellen Speicherort, insbesondere für die master-Datenbank, die model-Datenbank und die msdb-Datenbank.
  • Sie müssen über die Rechte eines Systemadministrators verfügen.
  • Sie benötigen für die Datenbanken, die Sie wiederherstellen möchten, sowohl den logischen als auch den physischen Namen aller Daten- und Protokolldateien.

    Hinweis: Führen Sie zum Ermitteln des logischen und des physischen Namens aller Dateien, die Sie aus dem Sicherungssatz wiederherstellen möchten, den folgenden Befehl in einer Query Analyzer-Verbindung aus, wobei mydbdata.bak der Name der Datei ist, die die Datenbanksicherung enthält:
    RESTORE FILELISTONLY FROM DISK='d:\mssql7\backup\mydbdata.bak'
    go
    					
  • Die Quellinstallation und die Zielinstallation von SQL Server 7.0 sollten dieselben Service Packs und Patches enthalten.
Wenn während der Prozedur Probleme auftreten und es nicht möglich ist, auf die verschobene Datenbank zuzugreifen oder SQL Server zu starten, überprüfen Sie das SQL Server-Fehlerprotokoll, und suchen Sie in der SQL Server 7.0-Onlinedokumentation nach näheren Informationen zu den aufgetretenen Fehlern.

Wiederherstellen der Datenbanken

  1. Stellen Sie die master-Datenbank wieder her.

    In dem folgenden Beispiel enthält die master-Datenbank eine Datendatei, "Master.mdf", und eine Protokolldatei, "Mastlog.ldf", aus der vollständigen Datenbanksicherungsdatei "Master_db.bak".
    1. Führen Sie an einer Eingabeaufforderung den folgenden Befehl aus, um SQL Server zu starten:
      d:\mssql7\binn\sqlservr -c -m

      Hinweis: Mit der Option -m wird SQL Server im Einzelbenutzermodus gestartet. Im Einzelbenutzermodus kann maximal eine einzige Verbindung hergestellt werden. Achten Sie daher darauf, dass keine anderen Clients oder Dienste diese Einzelverbindung herstellen, bevor Sie die Verbindung mit SQL Server Query Analyzer herstellen.
    2. Verwenden Sie in SQL Server Query Analyzer die folgende Syntax, um eine Sicherung der master-Datenbank wiederherzustellen:
      RESTORE DATABASE master FROM disk='d:\mssql7\backup\master_db.bak'
      WITH MOVE 'master' to 'd:\mssql7\data\master.mdf',
      MOVE 'mastlog' to 'd:\mssql7\data\mastlog.ldf',
      REPLACE
      go
      Hinweis: SQL Server wird automatisch beendet, nachdem Sie die master-Datenbank wiederhergestellt haben.
    3. Führen Sie an einer Eingabeaufforderung den folgenden Befehl aus, um SQL Server zu starten:
      d:\mssql7\binn\sqlservr -c -f -T3608 -T4022
      Hinweis: Mithilfe dieser Syntax können Sie Systemtabellen-Aktualisierungen durchführen.
    4. Führen Sie in SQL Server Query Analyzer den folgenden Satz von Anweisungen aus:

      Achtung: Die unkorrekte Aktualisierung von Systemtabellen kann schwerwiegende Probleme verursachen, die eine Neuinstallierung Ihrer SQL Server-Installation erforderlich machen. Microsoft kann nicht garantieren, dass Probleme, die von einer unkorrekten Aktualisierung der Systemtabellen herrühren, behoben werden können. Die Aktualisierung von Systemtabellen geschieht auf eigene Verantwortung.
      USE master
      go
      UPDATE sysdatabases SET filename='d:\mssql7\data\tempdb.mdf' WHERE name='tempdb'
      go
      ALTER DATABASE tempdb MODIFY FILE (name = tempdev, filename = 'd:\mssql7\data\tempdb.mdf')
      ALTER DATABASE tempdb MODIFY FILE (name = templog, filename = 'd:\mssql7\data\templog.ldf')
      go
      Die erfolgreiche Änderung sollte durch folgende Meldung angezeigt werden:
      Die Datei 'tempdev' in sysaltfiles wurde geändert. Löschen Sie die alte Datei nach dem Neustart von SQL Server.

      Die Datei 'templog' in sysaltfiles wurde geändert. Löschen Sie die alte Datei nach dem Neustart von SQL Server.
  2. Stellen Sie die model-Datenbank wieder her.

    In dem folgenden Beispiel enthält die model-Datenbank eine Datendatei, "Model.mdf", und eine Protokolldatei, "Modellog.ldf", aus der vollständigen Datenbanksicherungsdatei "Model_db.bak". Wenn Sie keine Sicherung der model-Datenbank haben oder wenn sie die Datenbank verwenden möchten, die standardmäßig während der SQL Server-Installation installiert wird, können Sie die model-Datenbank neu zuordnen. Diese Prozedur entspricht der Prozedur, die für die northwind-Datenbank und die pubs-Datenbank in Schritt 4 beschrieben ist.
    1. Führen Sie in SQL Server Query Analyzer die folgende gespeicherte Prozedur aus, um die aktuelle model-Datenbank von SQL Server zu trennen:
      exec sp_detach_db N'model'
      go
      Nach der Ausführung der gespeicherten Prozedur wird die folgende Meldung angezeigt:
      Die Datenbank 'model' wurde erfolgreich getrennt
      DBCC-Ausführung abgeschlossen. Falls DBCC Fehlermeldungen ausgegeben hat, wenden Sie sich an den Systemadministrator
      Hinweis: Sie müssen die model-Datenbank trennen, weil Sie sie nicht direkt mithilfe der Anweisung RESTORE überschreiben können. Sie müssen die Systemtabellenverweise für diese Systemdatenbank entfernen, bevor die Datenbank wiederhergestellt wird. Außerdem können Sie die Datenbank nicht löschen, um diese Systemeinträge zu entfernen.
    2. Verwenden Sie in SQL Server Query Analyzer die folgende Syntax, um eine Sicherung der model-Datenbank wiederherzustellen:
      RESTORE DATABASE model FROM disk='d:\mssql7\backup\model_db.bak'
      WITH MOVE 'modeldev' TO 'd:\mssql7\data\model.mdf',
           MOVE 'modellog' TO 'd:\mssql7\data\modellog.ldf',
           REPLACE
      go
      Hinweis: SQL Server wird automatisch beendet, nachdem Sie die model-Datenbank wiederhergestellt haben.
  3. Stellen Sie die msdb-Datenbank wieder her.

    In dem folgenden Beispiel enthält die msdb-Datenbank eine Datendatei, "Msdbdata.mdf", und eine Protokolldatei, "Msdblog.ldf", aus der vollständigen Datenbanksicherungsdatei "Msdb_db.bak".
    1. Führen Sie an einer Eingabeaufforderung den folgenden Befehl aus, um SQL Server zu starten:
      d:\mssql7\binn\sqlservr -c -f -T3608 -T4022
    2. Führen Sie in SQL Server Query Analyzer die folgende gespeicherte Prozedur aus, um die msdb-Datenbank zu trennen:
      exec sp_detach_db N'msdb'
      go
    3. Verwenden Sie in SQL Server Query Analyzer die folgende Syntax, um eine Sicherung der msdb-Datenbank wiederherzustellen:
      RESTORE DATABASE msdb FROM disk='d:\mssql7\backup\msdb_db.bak'
      WITH MOVE 'msdbdata' TO 'd:\mssql7\data\msdbdata.mdf',
           MOVE 'msdblog' TO 'd:\mssql7\data\msdblog.ldf',
           REPLACE
      go
      Hinweis: SQL Server wird automatisch beendet, nachdem Sie die msdb-Datenbank wiederhergestellt haben.
  4. Gehen Sie für die Datenbanken northwind und pubs folgendermaßen vor:

    Nachdem Sie die master-Datenbank wiederhergestellt haben, sind die Systemtabelleneinträge für die northwind- und die pubs-Datenbank geändert, und die beiden Datenbanken befinden sich wie alle anderen Datenbanken im Modus "Fehlerverdächtig". Wenn Sie die Original-Datenbankdateien wiederverwenden und erneut an den Server anhängen möchten, können Sie das folgende Beispiel verwenden. Andernfalls verwenden Sie, wenn Sie eine Kopie von der Sicherung wiederherstellen möchten, das in Schritt 6 beschriebene Beispiel für die mydb-Datenbank. Verwenden Sie das folgende Beispiel, um die Systemtabellenverweise für die northwind-Datenbank zu aktualisieren. Die northwind-Datenbank enthält eine Datendatei, "Northwind.mdf", und eine Protokolldatei, "Northwind.ldf".
    1. Führen Sie an einer Eingabeaufforderung den folgenden Befehl aus, um SQL Server zu starten:
      d:\mssql7\binn\sqlservr -c -f -T3608 -T4022
    2. Führen Sie in SQL Server Query Analyzer die folgende gespeicherte Prozedur aus, um die northwind-Datenbank zu trennen:
      exec sp_detach_db N'northwind'
      go

      Hinweis: Möglicherweise wird die folgende Meldung angezeigt, die besagt, dass kein Zugriff auf physische Dateien besteht:
      Server: Meldung 947, Ebene 16, Status 1, Zeile 1 Fehler beim ordnungsgemäßen Schließen der Datenbank 'northwind'.
      Die Datenbank 'northwind' wurde erfolgreich getrennt.
      DBCC-Ausführung abgeschlossen. Falls DBCC Fehlermeldungen ausgegeben hat, wenden Sie sich an den Systemadministrator.
    3. Verwenden Sie in SQL Server Query Analyzer die folgende Syntax, um die northwind-Datenbank anzuhängen:
      exec sp_attach_db N'northwind', N'd:\mssql7\data\northwnd.mdf', N'd:\mssql7\data\northwnd.ldf'
      go
  5. Ordnen Sie die pubs-Datenbank neu zu.

    Die pubs-Datenbank enthält eine Datendatei, "Pubs.mdf", und eine Protokolldatei, "Pubs_log.ldf". Sie können die pubs-Datenbank auf dieselbe Weise neu zuordnen wie die northwind-Datenbank.
  6. Stellen Sie die mydb-Datenbank wieder her.

    Die mydb-Datenbank enthält eine Datendatei, "Mydbdata.mdf", und eine Protokolldatei, "Mydblog.ldf", aus der vollständigen Datenbanksicherungsdatei "Mydb_db.bak".
    1. Führen Sie in SQL Server Query Analyzer die folgende gespeicherte Prozedur aus, um die mydb-Datenbank zu trennen:
      exec sp_detach_db N'mydb'
      go
    2. Verwenden Sie in SQL Server Query Analyzer die folgende Syntax, um eine Sicherung der mydb-Datenbank wiederherzustellen:
      RESTORE DATABASE mydb FROM disk='d:\mssql7\backup\mydb_db.bak'
      WITH MOVE 'mydbdata' TO 'd:\mssql7\data\mydbdata.mdf',
           MOVE 'mydblog' TO 'd:\mssql7\data\mydblog.ldf',
           REPLACE
      go
  7. Benennen Sie SQL Server um.

    Wichtig: Diese Prozedur ist nur erforderlich, wenn Sie den Namen der SQL Server-Installation ändern müssen, in der Sie gerade die master-Datenbank wiederhergestellt haben.

    Sie würden SQL Server beispielsweise unter folgenden Bedingungen umbenennen:

    • Sie haben die Datenbanksicherungen von einem Computer mit dem Namen SOURCESVR auf einen Computer mit dem Namen TARGETSVR wiederhergestellt.
    • Der Computer mit dem Namen TARGETSVR verfügt über einen SQL-Server mit dem Namen SOURCESVR.
    Wenn Sie SQL Server umbenennen müssen, verwenden Sie die folgende Syntax, um den Computernamen und den SQL Server-Namen zu synchronisieren:
    exec sp_dropserver 'SOURCESVR'
    go
    exec sp_addserver 'TARGETSVR', 'LOCAL'
    go
  8. Starten Sie den SQL Server-Dienst neu.

Informationsquellen

Weitere Informationen finden Sie in den folgenden Artikeln der Microsoft Knowledge Base:
224071 INF: Moving SQL Server Databases to a New Location
314546 SO WIRD'S GEMACHT: Verschieben von Datenbanken zwischen Computern mit SQL Server
Hinweis: Weitere Informationen über weitere Startoptionen wie -c, -m und -f finden Sie in der SQL Server-Onlinedokumentation.

Eigenschaften

Artikel-ID: 304692 - Geändert am: Freitag, 9. Dezember 2005 - Version: 3.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft SQL Server 7.0 Standard Edition
Keywords: 
kbinfo KB304692
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com