Importare un database con schema e dati in SQL Azure

di Cristian Civera, in Windows Azure,

SQL Azure è un motore relazionale offerto dalla piattaforma di Windows Azure che permette di utilizzare tutte le funzionalità di un RDBMS, ma dimenticandosi degli aspetti relativi allo storage, alla gestione dei backup, ecc.

Uno degli scogli maggiori che si incontra quando si vuole adottare SQL Azure è quello relativo alla migrazione di un database esistente on-premises, seppure creato solo a scopo di sviluppo. Poiché non vi è la possibilità di gestire backup o filegroup, non è possibile procedere con i soliti strumenti, ma solo eseguire script TSQL.

Oltre all'uso di tool di terze parti che permettono la sincronizzazione di schema e database, il team di Azure ha sviluppato un tool, attualmente in CTP e disponibile all'indirizzo http://sqldacexamples.codeplex.com/, che permette di esportare il proprio database in formato bacpac. Il file non è altro che uno zip contenente, sotto forma di xml e json, lo schema e i dati del nostro database. Una volta creato il file è possibile poi caricarlo su uno storage azure e importarlo dal pannello di amministrazione del database.

Il primo passo quindi consiste nel scaricare il tool DAC Import Export Client-side Tools V 1.1, scompattarlo e fare attenzione a sbloccare i due file andando nelle proprietà di essi. A questo punto da riga di comando occorre lanciare:

DacImportExportCli -S (local) -D MioDatabase -f database.bacpac -x -e

Con l'opzione -e si indica l'autenticazione integrata, oppure usando -u - p si indicano nome utente e password. Generato il file occorre caricarlo su uno storage, usando tool come http://azurestorageexplorer.codeplex.com.

A questo punto si entra nel portale di amministrazione di Azure, e nello specifico nella sezione Database. Posizionandosi sul server è disponibile un nuovo ribbon di nome "Import and Export" ed il pulsante "Import".

Nella finestra di dialogo che compare occorre specificare i dati per accedere a SQL Azure, quindi specificare l'amministratore e la relativa password. Vanno poi specificati il nome del database, la tipologia e la dimensione massima consentita. Nel bacpac URL va indicato il percorso HTTP completo verso il file precedentemente caricato, seguito dalla chiave (generica o specifica di sessione) per accedere a tale file.

Premendo finish l'operazione viene presa in carica ed elaborata. Poiché l'operazione può impiegare molto tempo, a seconda delle dimensioni del db, è possibile controllare la situazione premendo sul pulsante status, il quale mostra lo stato delle operazioni.

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi