Opzione Copia database non trovata in SQL Server Management Studio 2008 R2


10

Non riesco a vedere l'opzione Copia database in SQL Server Management Studio 2008 R2.

Qualcuno può dirmi cosa sta succedendo per favore? Copia database non trovato Immagine


il database di origine è completamente vuoto senza righe. Voglio copiare solo la struttura con tabelle e relazioni tra loro nel database vuoto ospitato sul server. si prega di consultare il link blogs.msdn.com/b/jorgepc/archive/2009/01/19/…

2
@windson Quindi esegui lo script del database. Anche un'operazione molto più semplice.
Thomas Stringer,

Sì, se è vuoto è altrettanto semplice usare l'opzione generate script. Non sono sicuro del motivo per cui mancherebbe l'opzione della procedura guidata non funzionante, ho installato 2008 e 2012 ed è presente in entrambi i posti.
Aaron Bertrand

Risposte:


24

Questo perché stai facendo clic sulla cosa sbagliata. Non fare clic destro database , ma è necessario in realtà pulsante destro del mouse sul database che si desidera copiare, e sotto Attività c'è un'opzione per la copia del database ... . In altre parole, fai clic con il pulsante destro del mouse su Database1 e vedrai questa opzione in Attività .

Secondo il commento di @ AaronBertrand, tuttavia, si consiglia vivamente di non utilizzare la procedura guidata per la copia del database. Basta fare un backup e ripristinare. Sarà meno un mal di testa.

Modifica : sembra che questa opzione non sia disponibile per l'edizione di SQL Server Express. Quando ci si connette a un'istanza di SQL Server Express, non è possibile eseguire la procedura guidata Copia database. Ciò è dovuto al fatto che i due mezzi principali per eseguire questa attività non sono disponibili in SQL Server Express Edition. Innanzitutto, il metodo Detach / Reattach si basa su SQL Agent (presumibilmente per copiare i dati e i file di registro dall'origine alla destinazione) e SMO è stato rimosso da 2008 R2 , quindi tale metodo non è disponibile anche in Express 2008 R2.


1
Sto facendo clic sul database che voglio solo copiare. Vedi il simbolo cilindro d'oro nell'immagine che indica il database.

@windson Oh, capisco. Ok, farei riferimento alla risposta di JNK, forse rientra in una di quelle categorie. In entrambi i casi, la mia raccomandazione generale sarebbe quella di "Generare script ..." per il database. Sarà molto più facile e meno soggetto a errori.
Thomas Stringer,

Vedi la mia modifica. Sembra che questa procedura guidata non sia disponibile per le istanze di SQL Server Express.
Thomas Stringer,

SMO è stato introdotto con SQL Server 2005, DMO è la funzionalità obsoleta. SMO è disponibile per l'edizione express di Sql Server 2008R2.
Roi Gavish,

Curiosamente, la procedura guidata Esporta dati in SSMS Express dice esplicitamente "Per spostare o copiare i database e i loro oggetti da un'istanza del server a un'altra, annullare questa procedura guidata e utilizzare invece la procedura guidata Copia database".
OR Mapper

9

Sono stato in grado di fare una copia di un database usando SQL Express selezionando Backup Database e quindi Ripristina dal database .. Esci semplice


6
Perché i downvotes? La risposta di Thomas indica che SQL Server Express non ha la procedura guidata per la copia del database, quindi il backup e il ripristino come nuovo nome sembrano un'alternativa semplice.
Martin Smith,

4

Assicurarsi che non sia contrassegnato per la replica o il recupero / sospetto / caricamento / inaccessibile.

Dalla pagina msdn su questa procedura guidata:

La procedura guidata Copia database non può essere utilizzata per copiare o spostare i seguenti database.

  • Database di sistema

  • Database contrassegnati per la replica.

  • Database contrassegnati come inaccessibili, in caricamento, offline, in ripristino, sospetti o in modalità di emergenza.


Ciao, ho assicurato tutte le limitazioni di cui sopra per ottenere l'opzione di copia del database. Ma non ho ancora trovato l'opzione.
navule

1
@windson Dallo screenshot della tua domanda sembra che tu stia utilizzando l'edizione di SQL Server Express, quindi sono curioso di sapere perché hai accettato questa risposta quando la seconda metà della risposta di Thomas appare più pertinente.
Martin Smith,

3

È strano ... ma sembra che questa opzione sia stata rimossa in SSMS 2008 R2. Posso vederlo in SSMS 2005 (a proposito, il link che hai pubblicato sta usando lo stesso) E quindi penso che la tua unica opzione sia solo quella di eseguire lo script del database o ripristinare il backup con un nome diverso.


È nel mio SSMS 2008 R2 locale.
Thomas Stringer,

1
Ora sta diventando davvero strano. Posso vedere questa opzione se mi connetto all'istanza dev di SQL Server 2008 R2 ... Ma se mi collego all'istanza di Express Edition sul server remoto, non vedo quell'opzione (non ho un'istanza espressa locale quindi non lo sono certo se è lo stesso caso). Mi chiedo se questa opzione sia basata sull'edizione dell'istanza (Dev, Express, Enterprise ecc.)
JackLock

6
Sto vedendo la stessa cosa. Sembra che questo non sia disponibile con un'istanza di SQL Server Express.
Thomas Stringer,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.