Uso de la CLI para copiar una base de datos de Azure SQL Database a un nuevo servidorUse CLI to copy a database in Azure SQL Database to a new server

Este ejemplo de script de CLI de Azure crea una copia de una base de datos existente en un nuevo servidor.This Azure CLI script example creates a copy of an existing database in a new server.

Si decide instalar y usar la CLI localmente, para este artículo es preciso que ejecute la versión 2.0 o posterior de la CLI de Azure.If you choose to install and use the CLI locally, this article requires that you are running the Azure CLI version 2.0 or later. Ejecute az --version para encontrar la versión.Run az --version to find the version. Si necesita instalarla o actualizarla, consulte Instalación de la CLI de Azure.If you need to install or upgrade, see Install the Azure CLI.

Script de ejemploSample script

Inicio de sesión en AzureSign in to Azure

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.If you don't have an Azure subscription, create a free account before you begin.

$subscription = "<subscriptionId>" # add subscription here

az account set -s $subscription # ...or use 'az login'

Ejecute el script.Run the script

#!/bin/bash
location="East US"
randomIdentifier=random123

resource="resource-$randomIdentifier"
server="server-$randomIdentifier"
database="database-$randomIdentifier"

targetResource="targetResource-$randomIdentifier"
targetLocation="West US"
targetServer="targetServer-$randomIdentifier"
targetDatabase="targetDatabase-$randomIdentifier"

login="sampleLogin"
password="samplePassword123!"

echo "Using resource group $resourceGroup with login: $login, password: $password..."

echo "Creating $resource and $targetResource..."
az group create --name $resource --location "$location"
az group create --name $targetResource --location "$targetLocation"

echo "Creating $server in $location and $targetServer in $targetLocation..."
az sql server create --name $server --resource-group $resource --location "$location" --admin-user $login --admin-password $password
az sql server create --name $targetServer --resource-group $targetResource --location "$targetLocation" --admin-user $login --admin-password $password

echo "Creating $database on $server..."
az sql db create --name $database --resource-group $resource --server $server --service-objective S0

echo "Copying $database on $server to $targetDatabase on $targetServer..."
az sql db copy --dest-name $targetDatabase --dest-resource-group $targetResource --dest-server $targetServer --name $database --resource-group $resource --server $server

Limpieza de la implementaciónClean up deployment

Use el siguiente comando para quitar el grupo de recursos y todos los recursos que tenga asociados.Use the following command to remove the resource group and all resources associated with it.

az group delete --name $resource
az group delete --name $targetResource

Referencia de ejemploSample reference

Este script usa los siguientes comandos.This script uses the following commands. Cada comando de la tabla crea un vínculo a documentación específica del comando.Each command in the table links to command specific documentation.

Get-HelpCommand DescripciónDescription
az sql db copyaz sql db copy Crea una copia de una base de datos que utiliza la instantánea en el momento actual.Creates a copy of a database that uses the snapshot at the current time.

Pasos siguientesNext steps

Para más información sobre la CLI de Azure, consulte la documentación de la CLI de Azure.For more information on the Azure CLI, see Azure CLI documentation.

Encontrará más ejemplos de scripts de la CLI de SQL Database en la documentación de Azure SQL Database.Additional SQL Database CLI script samples can be found in the Azure SQL Database documentation.