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
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Eseguire una query su SQL Azure tramite un workflow di GitHub
Utilizzare politiche di resiliency con Azure Container App
Utilizzare la session affinity con Azure Container Apps
Eseguire query manipolando le liste contenute in un oggetto mappato verso una colonna JSON
Load test di ASP.NET Core con k6
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Eseguire attività basate su eventi con Azure Container Jobs
Utilizzare la libreria Benchmark.NET per misurare le performance
Utilizzare Model as a Service su Microsoft Azure
Usare Refit e Polly in Blazor per creare client affidabili e fortemente tipizzati
Eseguire operazioni sui blob con Azure Storage Actions
I più letti di oggi
- ASP.NET Core Identity 8: è rivoluzione?
- Tutorial ASP.NET Dynamic Data Control
- Accesso dai dati con Entity Framework 7
- Utilizzare la classe XmlDataDocument per leggere un Feed RSS
- Microsoft Security Bulletin MS08-067
- Le novità di ASP.NET 4.5
- Mostrare tutti i cookie creati in fase di debug
- MIX 2011: Tutte le novità dei tool di ASP.NET MVC 3
- Usare il sensore di luminosità ambientale nelle Universal App