Obnovení serveru pomocí Azure CLI na flexibilním serveru Azure Database for PostgreSQL

Tento ukázkový skript CLI obnoví jeden flexibilní server Azure Database for PostgreSQL do předchozího bodu v čase.

Pokud nemáte účet Azure, vytvořte si bezplatný účet před tím, než začnete.

Požadavky

Ukázkový skript

Pro tento skript použijte Azure CLI místně, protože spuštění v Cloud Shellu trvá příliš dlouho.

Přihlásit se do Azure

Pomocí následujícího skriptu se přihlaste pomocí konkrétního předplatného.

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

# Restore an Azure Database for PostgreSQL server

# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-postgresql-rg-$randomIdentifier"
tag="backup-restore-postgresql"
server="msdocs-postgresql-server-$randomIdentifier"
sku="GP_Gen5_2"
restoreServer="restore-server$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"

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 PostgreSQL server in the resource group
# Name of a server maps to DNS name and is thus required to be globally unique in Azure.
echo "Creating $server in $location..."
az postgres server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --sku-name $sku

# Sleeping commands to wait long enough for automatic backup to be created
echo "Sleeping..."
sleep 10m

# Restore a server from backup to a new server
# To specify a specific point-in-time (in UTC) to restore from, use the ISO8601 format:
# restorePoint=“2021-07-09T13:10:00Z”
restorePoint=$(date +%s)
restorePoint=$(expr $restorePoint - 60)
restorePoint=$(date -d @$restorePoint +"%Y-%m-%dT%T")
echo $restorePoint

echo "Restoring $restoreServer"
az postgres server restore --name $restoreServer --resource-group $resourceGroup --restore-point-in-time $restorePoint --source-server $server

Úklid po nasazení

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. Některé z těchto zdrojů mohou trvat déle, než budou vytvořeny, stejně jako než budou smazány.

az group delete --name $resourceGroup

Referenční ukázka

Tento skript používá příkazy uvedené v následující tabulce:

Command Poznámky
Příkaz az group create slouží k vytvoření skupiny v Azure. Vytváří skupinu prostředků, ve které jsou uloženy všechny prostředky.
az postgresql server create Vytvoří Azure Database for PostgreSQL flexibilní server, který je hostitelem databází.
az postgresql server restore Obnoví server ze zálohy.
az group delete (smazat skupinu) Odstraní skupinu zdrojů včetně všech vnořených zdrojů.