Anfügen einer Datenbank

In diesem Thema wird beschrieben, wie eine Datenbank in SQL Server 2012 mit SQL Server Management Studio oder Transact-SQL angefügt wird. Sie können diese Funktion verwenden, um eine SQL Server-Datenbank zu kopieren, zu verschieben oder zu aktualisieren.

In diesem Thema

  • Vorbereitungen:

    Voraussetzungen

    Empfehlungen

    Sicherheit

  • Anfügen einer Datenbank mit:

    SQL Server Management Studio

    Transact-SQL

  • Nachverfolgung: Nach dem Aktualisieren einer Datenbank

Vorbereitungen

Voraussetzungen

  • Die Datenbank muss zuerst getrennt werden. Wenn Sie versuchen, eine Datenbank anzufügen, die nicht getrennt wurde, wird ein Fehler zurückgegeben. Weitere Informationen finden Sie unter Trennen einer Datenbank.

  • Wenn Sie eine Datenbank anfügen, müssen alle Datendateien (MDF- und NDF-Dateien) verfügbar sein. Wenn eine Datendatei einen anderen Pfad als beim Erstellen oder beim letzten Anfügen der Datenbank aufweist, müssen Sie den aktuellen Pfad der Datei angeben.

Empfehlungen

Es wird empfohlen, Datenbanken mit der ALTER DATABASE-Prozedur für geplante Verschiebungen zu verschieben, anstatt die Optionen zum Trennen und Anfügen zu verwenden. Weitere Informationen finden Sie unter Verschieben von Benutzerdatenbanken.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

Sicherheit

Dateizugriffsberechtigungen werden während einer Reihe von Datenbankvorgängen festgelegt, einschließlich des Trennens oder Anfügens einer Datenbank. Informationen zu Dateiberechtigungen, die beim Trennen und Anfügen einer Datenbank festgelegt werden, finden Sie unter Sichern von Daten- und Protokolldateien in der SQL Server 2008 R2-Onlinedokumentation.

Das Anfügen oder Wiederherstellen von Datenbanken aus unbekannten oder nicht vertrauenswürdigen Quellen wird nicht empfohlen. Solche Datenbanken können bösartigen Code enthalten, der möglicherweise unbeabsichtigten Transact-SQL-Code ausführt oder Fehler verursacht, indem er das Schema oder die physische Datenbankstruktur ändert. Bevor Sie eine Datenbank aus einer unbekannten oder nicht vertrauenswürdigen Quelle verwenden, führen Sie auf einem Nichtproduktionsserver DBCC CHECKDB in der Datenbank aus. Überprüfen Sie außerdem den Code in der Datenbank, wie z. B. gespeicherte Prozeduren oder anderen benutzerdefinierten Code. Weitere Informationen zum Anfügen von Datenbanken sowie Informationen zu Änderungen, die an Metadaten durchgeführt werden, wenn Sie eine Datenbank anfügen, finden Sie unter Anfügen und Trennen von Datenbanken (SQL Server).

Berechtigungen

Erfordert die Berechtigung CREATE DATABASE, CREATE ANY DATABASE oder ALTER ANY DATABASE.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

Verwenden von SQL Server Management Studio

So fügen Sie eine Datenbank an

  1. Stellen Sie im Objekt-Explorer von SQL Server Management Studio eine Verbindung zu einer Instanz von SQL Server Database Engine (Datenbankmodul) her, und erweitern Sie dann diese Instanz.

  2. Klicken Sie mit der rechten Maustaste auf Datenbanken, und klicken Sie auf Anfügen.

  3. Wenn Sie die anzufügende Datenbank angeben möchten, klicken Sie im Dialogfeld Datenbanken anfügen auf Hinzufügen. Wählen Sie dann im Dialogfeld Datenbankdateien suchen den Datenträger aus, auf dem die Datenbank gespeichert ist. Erweitern Sie die Verzeichnisstruktur, um die MDF-Datei der Datenbank zu suchen und auszuwählen. Beispiel:

    C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\AdventureWorks2012_Data.mdf

    Wichtiger HinweisWichtig

    Wenn Sie versuchen, eine Datenbank auszuwählen, die bereits angefügt wurde, wird ein Fehler generiert.

    • Anzufügende Datenbanken
      Zeigt Informationen zu den ausgewählten Datenbanken an.

    • <kein Spaltenheader>
      Zeigt ein Symbol an, das den Status des Anfügevorgangs angibt. Die möglichen Symbole werden in der unten stehenden Beschreibung von Status beschrieben.

    • Speicherort für MDF-Datei
      Zeigt den Pfad und den Dateinamen der ausgewählten MDF-Datei an.

    • Datenbankname
      Zeigt den Namen der Datenbank an.

    • Anfügen als
      Gibt wahlweise einen anderen Namen für die anzufügende Datenbank an.

    • Besitzer
      Zeigt eine Dropdownliste mit möglichen Datenbankbesitzern an, aus der Sie wahlweise einen anderen Besitzer auswählen können.

    • Status
      Zeigt den Status der Datenbank an (siehe folgende Tabelle).

      Symbol

      Statustext

      Beschreibung

      (Kein Symbol)

      (Kein Text)

      Das Anfügen hat noch nicht begonnen oder steht für dieses Objekt noch aus. Dies ist der Standardwert bei Öffnen des Dialogfelds.

      Grünes, nach rechts zeigendes Dreieck

      Vorgang wird ausgeführt

      Das Anfügen hat begonnen, ist aber noch nicht abgeschlossen.

      Grünes Häkchen

      Erfolgreich

      Das Objekt wurde erfolgreich angefügt.

      Roter Kreis mit einem weißen Kreuz darin

      Fehler

      Beim Anfügen ist ein Fehler aufgetreten. Der Vorgang konnte deshalb nicht erfolgreich abgeschlossen werden.

      Kreis mit zwei schwarzen Quadranten (links und rechts) und zwei weißen Quadranten (oben und unten) darin

      Beendet

      Das Anfügen wurde nicht erfolgreich abgeschlossen, weil der Benutzer den Vorgang angehalten hat.

      Kreis mit einem gekrümmten Pfeil darin, der entgegengesetzt der Uhrzeigerrichtung zeigt

      Rollback wurde ausgeführt

      Anfügen war erfolgreich, es wurde jedoch ein Rollback durchgeführt, weil beim Anfügen eines anderen Objekts ein Fehler aufgetreten ist.

    • Meldung
      Zeigt entweder eine leere Meldung oder einen "Datei nicht gefunden"-Link an.

    • Hinzufügen
      Suchen Sie die erforderlichen Hauptdatenbankdateien. Wenn der Benutzer eine MDF-Datei auswählt, werden entsprechende Informationen automatisch in die jeweiligen Felder des Rasters Anzufügende Datenbank eingetragen.

    • Entfernen
      Entfernt die ausgewählte Datei aus dem Raster Anzufügende Datenbank.

    • Datenbankdetails für " <database_name> "
      Zeigt die Namen der anzufügenden Dateien an. Um den Pfadnamen einer Datei zu überprüfen bzw. zu ändern, klicken Sie auf die Schaltfläche Durchsuchen ().

      HinweisHinweis

      Wenn eine Datei nicht vorhanden ist, wird in der Spalte Meldung "Nicht gefunden" angezeigt. Wenn keine Protokolldatei gefunden wird, liegt sie in einem anderen Verzeichnis oder wurde gelöscht. Dann müssen Sie entweder den Dateipfad im Raster Datenbankdetails ändern, um auf den richtigen Pfad zu verweisen, oder die Protokolldatei aus dem Raster entfernen. Wenn keine .ndf-Datendatei gefunden wird, müssen Sie den Pfad im Raster aktualisieren, sodass er auf den richtigen Speicherort zeigt.

    • Originaldateiname
      Zeigt den Namen der angefügten Datei an, die zur Datenbank gehört.

    • Dateityp
      Gibt den Dateityp an: Datendatei oder Protokolldatei.

    • Aktueller Dateipfad
      Zeigt den Pfad zur ausgewählten Datenbankdatei an Die Pfadangabe kann manuell bearbeitet werden.

    • Meldung
      Zeigt entweder eine leere Meldung oder einen Datei nicht gefunden-Link an.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

Verwenden von Transact-SQL

So fügen Sie eine Datenbank an

  1. Stellen Sie eine Verbindung mit dem Database Engine (Datenbankmodul) her.

  2. Klicken Sie auf der Standardleiste auf Neue Abfrage.

  3. Verwenden Sie die CREATE DATABASE-Anweisung mit der FOR ATTACH-Klausel.

    Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen. In diesem Beispiel werden die Dateien der Datenbank AdventureWorks2012 angefügt, und die Datenbank wird in MyAdventureWorks umbenannt.

    CREATE DATABASE MyAdventureWorks 
        ON (FILENAME = 'C:\MySQLServer\AdventureWorks_Data.mdf'), 
        (FILENAME = 'C:\MySQLServer\AdventureWorks_Log.ldf') 
        FOR ATTACH; 
    
    HinweisHinweis

    Alternativ können Sie die gespeicherte Prozedur sp_attach_db oder sp_attach_single_file_db verwenden. Diese Prozeduren werden jedoch in einer zukünftigen Version von Microsoft SQL Server entfernt. Verwenden Sie diese Funktion beim Entwickeln neuer Anwendungen nicht, und planen Sie das Ändern von Anwendungen, in denen es zurzeit verwendet wird. Es empfiehlt sich, stattdessen CREATE DATABASE … FOR ATTACH zu verwenden.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

Nachverfolgung: Nach dem Aktualisieren einer SQL Server-Datenbank

Nachdem Sie eine Datenbank mithilfe der Anfügemethode aktualisiert haben, ist die Datenbank sofort verfügbar und wird automatisch aktualisiert. Wenn die Datenbank Volltextindizes aufweist, werden diese beim Upgrade entweder importiert, zurückgesetzt oder neu erstellt, je nach der Einstellung der Servereigenschaft Volltextupgrade-Option. Wenn die Upgradeoption auf Importieren oder Neu erstellen festgelegt ist, sind die Volltextindizes während des Upgrades nicht verfügbar. Je nach Menge der indizierten Daten kann der Importvorgang mehrere Stunden dauern; die Neuerstellung sogar bis zu zehnmal länger. Wenn die Upgradeoption auf Importieren festgelegt ist und kein Volltextkatalog verfügbar ist, werden die zugehörigen Volltextindizes neu erstellt.

War der Kompatibilitätsgrad einer Benutzerdatenbank vor dem Upgrade 90 oder 100, wird er nach dem Upgrade beibehalten. War der Kompatibilitätsgrad der aktualisierten Datenbank vor dem Upgrade 80, wird er auf 90 gesetzt, was dem niedrigsten unterstützten Kompatibilitätsgrad in SQL Server 2012 entspricht. Weitere Informationen finden Sie unter ALTER DATABASE-Kompatibilitätsgrad (Transact-SQL).

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Nach oben]

Siehe auch

Verweis

CREATE DATABASE (Transact-SQL)

Konzepte

Trennen einer Datenbank