Vytváření a správa replik pro čtení na flexibilním serveru Azure Database for MySQL pomocí Azure CLI

PLATÍ PRO: Flexibilní server Azure Database for MySQL

Tento ukázkový skript rozhraní příkazového řádku vytvoří a spravuje repliky pro čtení na flexibilním serveru Azure Database for MySQL.

Důležité

Když vytvoříte repliku pro zdroj, který nemá žádné existující repliky, zdroj se nejprve restartuje, aby se připravil na replikaci. Vezměte v úvahu tyto operace a proveďte tyto operace v období mimo špičku.

Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure, než začnete. V současné době můžete s bezplatným účtem Azure vyzkoušet flexibilní server Azure Database for MySQL zdarma po dobu 12 měsíců. Další informace najdete v tématu Bezplatné vyzkoušení flexibilního serveru Azure Database for MySQL.

Požadavky

Ukázkový skript

Spuštění služby Azure Cloud Shell

Azure Cloud Shell je bezplatné interaktivní prostředí, které můžete použít k provedení kroků v tomto článku. Má předinstalované obecné nástroje Azure, které jsou nakonfigurované pro použití s vaším účtem.

Pokud chcete otevřít Cloud Shell, vyberte položku Vyzkoušet v pravém horním rohu bloku kódu. Cloud Shell můžete spustit také na samostatné kartě prohlížeče na adrese https://shell.azure.com.

Po otevření Cloud Shellu ověřte, že je pro vaše prostředí vybraný Bash . Následující relace budou používat Azure CLI v prostředí Bash, výběrem možnosti Kopírovat zkopírujte bloky kódu, vložte ho do Cloud Shellu a stisknutím klávesy Enter ho spusťte.

Přihlášení k Azure

Cloud Shell se automaticky ověřuje pod počátečním přihlášeným účtem. Pomocí následujícího skriptu se přihlaste pomocí jiného předplatného a nahraďte <Subscription ID> ID předplatného Azure. Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.

subscription="<subscriptionId>" # add subscription here

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

Další informace najdete v tématu Nastavení aktivního předplatného nebo interaktivního přihlášení.

Spuštění skriptu

# Create and manage MySQL - Flexible Server read replicas

# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
subscriptionId="$(az account show --query id -o tsv)"
location="East US"
resourceGroup="msdocs-mysql-rg-$randomIdentifier"
tag="monitor-and-scale-mysql"
server="msdocs-mysql-server-$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
ipAddress="None"
sku="Standard_D2ds_v4"
tier="GeneralPurpose"
storageSize="64"
replica="msdocs-replica-mysql-$randomIdentifier" # Substitute with preferred name for the replica server. 

# Specifying an IP address of 0.0.0.0 allows public access from any resources
# deployed within Azure to access your server. Setting it to "None" sets the server 
# in public access mode but does not create a firewall rule.
# For your public IP address, https://whatismyipaddress.com

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

# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag

# Create a MySQL Flexible server in the resource group
echo "Creating $server"
az mysql flexible-server create --name $server --resource-group $resourceGroup --location "$location" --sku-name $sku --tier $tier --storage-size $storageSize --admin-user $login --admin-password $password --public-access $ipAddress

# Optional: Add firewall rule to connect from all Azure services
# To limit to a specific IP address or address range, change start-ip-address and end-ip-address
echo "Adding firewall for IP address range"
az mysql flexible-server firewall-rule create --name $server --resource-group $resourceGroup --rule-name AllowAzureIPs --start-ip-address 0.0.0.0 --end-ip-address 0.0.0.0

# Create Replica Server
echo "Creating $replica"
az mysql flexible-server replica create --replica-name $replica --source-server $server --resource-group $resourceGroup

# List all read replicas for the source server
echo "List replicas on $server"
az mysql flexible-server replica list --source-server $server --resource-group $resourceGroup

# Stop replication to a read replica and make it a read/write server.
echo "Stop replication to $replica"
az mysql flexible-server replica stop-replication --resource-group $resourceGroup --name $replica --yes

Vyčištění prostředků

Pomocí následujícího příkazu odeberte skupinu prostředků a všechny prostředky přidružené k ní pomocí příkazu az group delete – pokud tyto prostředky nepotřebujete. Vytvoření některých z těchto prostředků a odstranění může chvíli trvat.

az group delete --name $resourceGroup

Ukázkový odkaz

Tento skript používá následující příkazy. Každý příkaz v tabulce odkazuje na příslušnou část dokumentace.

Příkaz Poznámky
az group create Vytvoří skupinu prostředků, ve které jsou uložené všechny prostředky.
az mysql flexible-server create Vytvoří flexibilní server, který hostuje databáze.
az mysql flexible-server replica create Vytvořte repliku pro čtení pro server.
az mysql flexible-server replica list Zobrazí seznam všech replik pro čtení pro daný server.
az mysql flexible-server replica stop-replication Zastavte replikaci na repliku pro čtení a nastavte ji jako server pro čtení a zápis.
az mysql flexible-server delete Odstraní flexibilní server.
az group delete Odstraní skupinu prostředků včetně všech vnořených prostředků.

Další kroky