Die Option "Datenbank kopieren" wurde in SQL Server Management Studio 2008 R2 nicht gefunden


10

Ich kann die Option Datenbank kopieren in SQL Server Management Studio 2008 R2 nicht sehen.

Kann mir bitte jemand sagen, was los ist? Datenbank nicht gefunden Bild gefunden


Die Quelldatenbank ist ohne Zeilen vollständig leer. Ich möchte nur die Struktur mit Tabellen und Beziehungen zwischen ihnen in die leere Datenbank kopieren, die auf dem Server gehostet wird. Bitte sehen Sie den Link blogs.msdn.com/b/jorgepc/archive/2009/01/19/…

2
@windson Dann skripte einfach die Datenbank aus. Auch eine viel einfachere Bedienung.
Thomas Stringer

Ja, wenn es leer ist, ist es genauso einfach, die Option zum Generieren von Skripten zu verwenden. Ich bin mir nicht sicher, warum die defekte Assistentenoption fehlen würde. Ich habe 2008 und 2012 installiert und sie ist an beiden Stellen vorhanden.
Aaron Bertrand

Antworten:


24

Das liegt daran, dass Sie auf das Falsche klicken. Nicht rechten Maustaste auf Datenbanken , aber Sie müssen , um tatsächlich die Datenbank der rechten Maustaste, den Sie kopieren möchten, und unter Aufgaben gibt es eine Option für Datenbank kopieren ... . Mit anderen Worten, klicken Sie mit der rechten Maustaste auf Datenbank1, und diese Option wird unter Aufgaben angezeigt .

Gemäß dem Kommentar von @ AaronBertrand wird jedoch dringend empfohlen , den Assistenten zum Kopieren von Datenbanken nicht zu verwenden. Einfach ein Backup erstellen und wiederherstellen. Es wird weniger Kopfschmerzen sein.

Bearbeiten : Diese Option scheint für die SQL Server Express Edition nicht verfügbar zu sein. Wenn Sie eine Verbindung zu einer SQL Server Express-Instanz herstellen, können Sie den Assistenten zum Kopieren von Datenbanken nicht ausführen. Dies liegt an der Tatsache, dass die beiden primären Mittel zum Ausführen dieser Aufgabe in SQL Server Express Edition nicht verfügbar sind. Erstens basiert die Detach / Reattach-Methode auf SQL Agent (vermutlich zum Kopieren der Daten und Protokolldateien von der Quelle zum Ziel), und SMO wurde aus 2008 R2 entfernt , sodass diese Methode auch in Express 2008 R2 nicht verfügbar ist.


1
Ich klicke auf die Datenbank, die ich nur kopieren möchte. Siehe das Symbol goldener Zylinder im Bild, das die Datenbank anzeigt.

@windson Oh, ich verstehe. Ok, ich würde auf JNKs Antwort verweisen, vielleicht fällt sie in eine dieser Kategorien. In jedem Fall wäre meine übergeordnete Empfehlung, nur "Skripte generieren ..." für die Datenbank. Es wird viel einfacher und weniger fehleranfällig sein.
Thomas Stringer

Siehe meine Bearbeitung. Es scheint, als ob dieser Assistent für SQL Server Express-Instanzen nicht verfügbar ist.
Thomas Stringer

SMO wurde mit SQL Server 2005 eingeführt, DMO ist die veraltete Funktion. SMO ist für die Express Edition von SQL Server 2008R2 verfügbar.
Roi Gavish

Seltsamerweise sagt der Assistent zum Exportieren von Daten in SSMS Express ausdrücklich: "Um Datenbanken und ihre Objekte von einer Serverinstanz auf eine andere zu verschieben oder zu kopieren, brechen Sie diesen Assistenten ab und verwenden Sie stattdessen den Assistenten zum Kopieren von Datenbanken."
ODER Mapper

9

Ich konnte eine Kopie einer Datenbank mit SQL Express erstellen, indem ich Datenbank sichern und dann Aus Datenbank wiederherstellen auswählte. Beenden Sie einfach


6
Warum die Abstimmungen? Die Antwort von Thomas zeigt, dass SQL Server Express nicht über den Assistenten zum Kopieren von Datenbanken verfügt. Daher scheint das Sichern und Wiederherstellen als neuer Name eine einfache Alternative zu sein.
Martin Smith

4

Stellen Sie sicher, dass es nicht für die Replikation oder Wiederherstellung / Verdächtig / Laden / Unzugänglich markiert ist.

Von der msdn-Seite dieses Assistenten:

Der Assistent zum Kopieren von Datenbanken kann nicht zum Kopieren oder Verschieben der folgenden Datenbanken verwendet werden.

  • Systemdatenbanken

  • Für die Replikation markierte Datenbanken.

  • Mit Unzugänglich, Laden, Offline, Wiederherstellen, Verdächtig oder im Notfallmodus gekennzeichnete Datenbanken.


Hallo, ich habe alle oben genannten Einschränkungen sichergestellt, um die Option zum Kopieren der Datenbank zu erhalten. Aber ich konnte die Option noch nicht finden.
Navule

1
@windson Aus dem Screenshot in Ihrer Frage geht hervor, dass Sie anscheinend SQL Server Express Edition verwenden. Ich bin gespannt, warum Sie diese Antwort akzeptiert haben, wenn die zweite Hälfte von Thomas 'Antwort relevanter erscheint.
Martin Smith

3

Das ist seltsam ... aber es sieht so aus, als ob diese Option in SSMS 2008 R2 entfernt wurde. Ich kann es in SSMS 2005 sehen (übrigens verwendet der Link, den Sie gepostet haben, denselben). Ich denke, Ihre einzige Option besteht darin, die Datenbank auszuskripten oder die Sicherung mit einem anderen Namen wiederherzustellen.


Es ist in meinem lokalen SSMS 2008 R2.
Thomas Stringer

1
Das wird jetzt wirklich seltsam. Ich kann diese Option sehen, wenn ich eine Verbindung zur SQL Server 2008 R2-Entwicklungsinstanz herstelle. Wenn ich jedoch eine Verbindung zur Express Edition-Instanz auf dem Remote-Server herstelle, wird diese Option nicht angezeigt (ich habe keine lokale Express-Instanz, daher nicht sicher, ob es der gleiche Fall ist) .. Ich frage mich, ob diese Option auf der Edition der Instanz (Dev, Express, Enterprise usw.)
basiert

6
Ich sehe das Gleiche. Es sieht so aus, als ob dies mit einer SQL Server Express-Instanz nicht verfügbar ist.
Thomas Stringer
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.