Spostare un database nel database SQL in un pool elastico SQL usando l'interfaccia della riga di comando di Azure
Si applica a: database SQL di Azure
Questo script di esempio dell'interfaccia della riga di comando di Azure crea due pool elastici, sposta un database in pool nel database SQL da un pool elastico SQL a un altro e quindi sposta il database in pool all'esterno del pool elastico SQL in modo che sia un database singolo nel database SQL.
Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.
Prerequisiti
Usare l'ambiente Bash in Azure Cloud Shell. Per altre informazioni, vedere Avvio rapido su Bash in Azure Cloud Shell.
Se si preferisce eseguire i comandi di riferimento dell'interfaccia della riga di comando in locale, installare l'interfaccia della riga di comando di Azure. Per l'esecuzione in Windows o macOS, è consigliabile eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker. Per altre informazioni, vedere Come eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker.
Se si usa un'installazione locale, accedere all'interfaccia della riga di comando di Azure con il comando az login. Per completare il processo di autenticazione, seguire la procedura visualizzata nel terminale. Per altre opzioni di accesso, vedere Accedere tramite l'interfaccia della riga di comando di Azure.
Quando richiesto, al primo utilizzo installare l'estensione dell'interfaccia della riga di comando di Azure. Per altre informazioni sulle estensioni, vedere Usare le estensioni con l'interfaccia della riga di comando di Azure.
Eseguire az version per trovare la versione e le librerie dipendenti installate. Per eseguire l'aggiornamento alla versione più recente, eseguire az upgrade.
Script di esempio
Avviare Azure Cloud Shell
Azure Cloud Shell è una shell interattiva gratuita che può essere usata per eseguire la procedura di questo articolo. Include strumenti comuni di Azure preinstallati e configurati per l'uso con l'account.
Per aprire Cloud Shell, selezionare Prova nell'angolo superiore destro di un blocco di codice. È anche possibile avviare Cloud Shell in una scheda separata del browser visitando https://shell.azure.com.
Quando si apre Cloud Shell, verificare che Bash sia selezionato per l'ambiente in uso. Le sessioni future useranno l'interfaccia della riga di comando di Azure in un ambiente Bash. Selezionare Copia per copiare i blocchi di codice, incollarli in Cloud Shell e premere Invio per eseguirli.
Accedere ad Azure
Cloud Shell viene autenticato automaticamente con l'account iniziale con cui è stato eseguito l'accesso. Usare lo script seguente per accedere usando una sottoscrizione diversa, sostituendo <Subscription ID>
con l'ID sottoscrizione di Azure. Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
Per altre informazioni, vedere Impostare la sottoscrizione attiva oppure Accedere in modo interattivo
Eseguire lo script
# Move a database in SQL Database in a SQL elastic pool
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-azuresql-rg-$randomIdentifier"
tag="move-database-between-pools"
server="msdocs-azuresql-server-$randomIdentifier"
database="msdocsazuresqldb$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
pool="msdocs-azuresql-pool-$randomIdentifier"
secondaryPool="msdocs-azuresql-secondary-pool-$randomIdentifier"
echo "Using resource group $resourceGroup with login: $login, password: $password..."
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
echo "Creating $server in $location..."
az sql server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password
echo "Creating $pool and $secondaryPool..."
az sql elastic-pool create --resource-group $resourceGroup --server $server --name $pool --edition GeneralPurpose --family Gen5 --capacity 2
az sql elastic-pool create --resource-group $resourceGroup --server $server --name $secondaryPool --edition GeneralPurpose --family Gen5 --capacity 2
echo "Creating $database in $pool..."
az sql db create --resource-group $resourceGroup --server $server --name $database --elastic-pool $pool
echo "Moving $database to $secondaryPool..." # create command updates an existing datatabase
az sql db create --resource-group $resourceGroup --server $server --name $database --elastic-pool $secondaryPool
echo "Upgrade $database tier..."
az sql db create --resource-group $resourceGroup --server $server --name $database --service-objective S0
Pulire le risorse
Usare il seguente comando per rimuovere il gruppo di risorse e tutte le risorse associate usando il comando az group delete, a meno che non si abbia una necessità continua di queste risorse. La creazione e l'eliminazione di alcune di queste risorse può richiedere tempo.
az group delete --name $resourceGroup
Informazioni di riferimento per l'esempio
Questo script usa i comandi seguenti. Ogni comando della tabella include collegamenti alla documentazione specifica del comando.
Comando | Descrizione |
---|---|
az sql server | Comandi per il server. |
az sql elastic-pools | Comandi per il pool elastico. |
az sql db | Comandi per il database. |
Passaggi successivi
Per altre informazioni sull'interfaccia della riga di comando di Azure, vedere la documentazione sull'interfaccia della riga di comando di Azure.
Per altri esempi di script dell'interfaccia della riga di comando per database SQL, vedere la documentazione del database SQL di Azure.