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
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Loggare le query più lente con Entity Framework
Gestire i dati con Azure Cosmos DB Data Explorer
Utilizzare Azure Cosmos DB con i vettori
Referenziare un @layer più alto in CSS
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database
Eseguire una ricerca avanzata per recuperare le issue di GitHub
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Usare le navigation property in QuickGrid di Blazor
.NET Conference Italia 2024
Configurare e gestire sidecar container in Azure App Service
Rendere le variabili read-only in una pipeline di Azure DevOps
Gestione dell'annidamento delle regole dei layer in CSS
I più letti di oggi
- Creare un router per Single Page Application con l'evento navigate
- Serializzazione e deserializzazione JSON in JavaScript
- Utilizzare app-shell per rendere un'applicazione Angular più responsiva alla partenza
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!