Importa / esporta database con SQL Server Server Management Studio


197

Ho pensato che sarebbe stato banale, ma non lo è ... Sono sicuro che esiste un modo semplice per farlo, ma non riesco a trovarlo. Mi vergogno.

Voglio importare / esportare il database stesso, le tabelle, i vincoli (chiavi esterne e così via). Preferirei non ottenere i dati con esso, ma posso liberarmene dopo se non c'è altro modo.

Quindi ... come esportare un database usando MS SQL Server Management Studio? Come lo importi?

L'unica soluzione che ho trovato è stato fare clic destro sulle tabelle e "script per creare", ma ho qualcosa come 100 tabelle, quindi preferirei evitare questo.

Grazie!

Risposte:


316

Fare clic con il tasto destro del mouse sul database stesso, Attività -> Genera script ...

Quindi seguire la procedura guidata.

Per SSMS2008 +, se si desidera esportare anche i dati, nel passaggio "Imposta opzioni di scripting", selezionare il pulsante "Avanzate" e modificare "Tipi di dati in script" da "Solo schema" a "Solo dati" o "Schema e Dati".


11
che ne dici di ottenere i dati? è possibile creare query di inserimento con un metodo come generare script?
Kubi,

50
@Kubi, al passaggio "Imposta opzioni di scripting", seleziona il pulsante "Avanzate" e modifica "Solo schema" in "Solo dati" o "Schema e dati".
Brandon,

25
@Brandon, grazie per quello. Perché "solo schema", "solo dati" o "schema e dati" è considerato un'opzione "Avanzata" va oltre la mia comprensione.
Brian Hooper,

2
2Brandon: le opzioni di scripting "Avanzate" sono disponibili solo in SSMS 2008+.
ivan_pozdeev,

2
"Solo dati" o "Schema e dati" creano comandi INSERT che duplicano i nomi delle intestazioni per ogni riga. Il file ha circa il doppio delle dimensioni di una versione testuale dei dati. Si potrebbe invece provare a esportare solo lo schema, quindi utilizzare BULK INSERT per caricare un file CSV creato con la procedura guidata di esportazione. Fai attenzione, MSQL non sa leggere i campi tra virgolette.
John Mark,

23

Un'altra soluzione è: il backup e il ripristino del database

Eseguire il backup del database di sistema

Per eseguire il backup del database di sistema utilizzando Microsoft SQL Server Management Studio Express, attenersi alla seguente procedura:

  1. Scarica e installa Microsoft SQL Server 2008 Management Studio Express dal sito Web Microsoft: http://www.microsoft.com/en-us/download/details.aspx?id=7593

  2. Dopo l'installazione di Microsoft SQL Server Management Studio Express, avviare l'applicazione per connettersi al database di sistema. Viene visualizzata la finestra di dialogo "Connetti al server". Nel campo "Nome server:", immettere il nome del server Webtrends su cui è installato il database di sistema. Nel campo "Autenticazione:" seleziona "Autenticazione di Windows" se accedi al computer Windows utilizzando l'account del servizio Webtrends o un account con diritti per apportare modifiche al database di sistema. In caso contrario, selezionare "Autenticazione di SQL Server" dal menu a discesa e immettere le credenziali per un account SQL Server che disponga dei diritti necessari. Fare clic su "Connetti" per connettersi al database.

  3. Espandi "Database", fai clic con il pulsante destro del mouse su "wt_sched" e seleziona "Attività"> "Backup ..." dal menu di scelta rapida. Viene visualizzata la finestra di dialogo "Backup database". Nella sezione "Origine", assicurarsi che "wt_sched" sia selezionato per "Database:" e "Tipo di backup:" sia "Completo". In "Set di backup" fornire un nome, una descrizione e una data di scadenza in base alle esigenze, quindi selezionare "Aggiungi ..." nella sezione "Destinazione" e designare il nome del file e il percorso in cui verrà salvato il backup. Potrebbe essere necessario selezionare l'opzione "Sovrascrivi tutti i set di backup esistenti" nella sezione Opzioni se esiste già un backup che deve essere sovrascritto.
  4. Selezionare "OK" per completare il processo di backup.

  5. Ripetere i passaggi precedenti per la parte "wtMaster" del database.

Ripristina il database di sistema

Per ripristinare il database di sistema utilizzando Microsoft SQL Server Management Studio, attenersi alla seguente procedura:

  1. Se non l'hai già fatto, scarica e installa Microsoft SQL Server 2008 Management Studio Express dal sito Web Microsoft: http://www.microsoft.com/en-us/download/details.aspx?id=7593

  2. Dopo l'installazione di Microsoft SQL Server Management Studio, avviare l'applicazione per connettersi al database di sistema. Viene visualizzata la finestra di dialogo "Connetti al server". Nel campo "Tipo server:", selezionare "Motore di database" (impostazione predefinita). Nel campo "Nome server:", selezionare "\ WTSYSTEMDB" dove si trova il nome del server Webtrends in cui si trova il database. WTSYSTEMDB è il nome dell'istanza del database in un'installazione predefinita. Nel campo "Autenticazione:" seleziona "Autenticazione di Windows" se accedi al computer Windows utilizzando l'account del servizio Webtrends o un account con diritti per apportare modifiche al database di sistema. Altrimenti, selezionare "Autenticazione di SQL Server" dal menu a discesa e immettere le credenziali per un account SQL Server che disponga dei diritti necessari. Fare clic su "Connetti" per connettersi al database.

  3. Espandere "Database", fare clic con il tasto destro su "wt_sched" e selezionare "Elimina" dal menu contestuale. Assicurarsi che la casella di controllo "Elimina backup e ripristina informazioni cronologiche per database" sia selezionata.

  4. Selezionare "OK" per completare il processo di eliminazione.

  5. Ripetere i passaggi precedenti per la parte "wtMaster" del database.

  6. Fare clic con il tasto destro su "Database" e selezionare "Ripristina database ..." dal menu contestuale. Nel campo "Al database:" digitare "wt_sched". Seleziona il pulsante di opzione "Da dispositivo:". Fai clic sull'ellisse (...) a destra del campo di testo "Da dispositivo:". Fai clic sul pulsante "Aggiungi". Passare a e selezionare il file di backup per "wt_sched". Seleziona "OK" nel modulo "Trova file di backup". Seleziona "OK" nel modulo "Specifica backup". Seleziona la casella di controllo nella colonna di ripristino accanto a "Backup database completo wt_sched". Selezionare "OK" nel modulo "Ripristina database".

  7. Ripetere il passaggio 6 per la parte "wtMaster" del database.

Per gentile concessione - http://kb.webtrends.com/articles/How_To/Backing-Up-and-Restoring-the-System-Database-using-MS-SQL-Management-Studio


1
Il problema che ho avuto con questo approccio è che il file bak non si comporta bene durante il ripristino in un altro computer. A volte funziona, a volte no. Almeno per me la sceneggiatura è un approccio più sicuro. +1 per la spiegazione dettagliata
Nunser

1
inoltre, questo richiede privilegi di sistema, che spesso se si sviluppa su un'infrastruttura di servizi condivisi non si dispone. ben fatto Microsoft.
matao,

3

Volevo condividere con te la mia soluzione per esportare un database con Microsoft SQL Server Management Studio.

Per esportare il tuo database

  1. Apri una nuova richiesta
  2. Copia incolla questo script

    SET @BackupFile = 'D: \ database-backup.bak'

    --PRINT @BackupFile

    DATABASE DI BACKUP [% databaseName%]

    DISCO = @BackupFile

Non dimenticare di sostituire% databaseName% con il nome del database che si desidera esportare.

Si noti che questo metodo fornisce un file più leggero rispetto al menu.

Per importare questo file da SQL Server Management Studio. Non dimenticare di eliminare prima il database.

  1. Fai clic su Ripristina database

Fai clic su Ripristina database

  1. Aggiungi il file di backup Aggiungi il file di backup

  2. Convalidare

Godere! :) :)


2
finalmente qualche soluzione di screenshot! :)
Reven,

2

per Microsoft SQL Server Management Studio 2012,2008 .. Prima copia il tuo file di database .mdf e il file di registro .ldf e incolla il file di installazione del tuo server sql in Programmi-> Microsoft SQL Server-> MSSQL10.SQLEXPRESS-> MSSQL-> DATA . Quindi aprire Microsoft SQL Server. Fare clic con il tasto destro del mouse su Database -> Selezionare l'opzione Allega ...


Ho provato questo metodo e ha funzionato. Copiato database.mdf e database_log.ldf dalla suddetta cartella (SQL 2012), quindi trasferito quei 2 file su un nuovo server con versione diversa (SQL Express 2014) di SQL Management Studio.
Vignesh Chinnaiyan,

0

Ho provato le risposte sopra ma il file di script generato era molto grande e avevo problemi durante l'importazione dei dati. Ho finito per staccare il database, quindi copiare .mdf sulla mia nuova macchina, quindi collegarlo alla mia nuova versione di SQL Server Management Studio.

Ho trovato le istruzioni su come eseguire questa operazione sul sito Web Microsoft:
https://msdn.microsoft.com/en-us/library/ms187858.aspx

NOTA: dopo aver rimosso il database, ho trovato il file .mdf all'interno di questa directory:
C: \ Programmi \ Microsoft SQL Server \

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.