Point-in-time restore of an Azure Database for PostgreSQL - Flexible Server instance with Azure CLI
APPLIES TO: Azure Database for PostgreSQL - Flexible Server
This article provides step-by-step procedure to perform point-in-time recoveries in Azure Database for PostgreSQL flexible server using backups.
Prerequisites
If you don't have an Azure subscription, create a free account before you begin.
Install or upgrade Azure CLI to the latest version. See Install Azure CLI.
Log in to Azure account using az login command. Note the id property, which refers to Subscription ID for your Azure account.
az login
If you have multiple subscriptions, choose the appropriate subscription in which you want to create the server using the
az account set
command. `az account set --subscription <subscription id>
Create an Azure Database for PostgreSQL flexible server instance if you haven't already created one using the
az postgres flexible-server create
command.az postgres flexible-server create --resource-group myresourcegroup --name myservername
Restore a server from backup to a new server
You can run the following command to restore a server to an earliest existing backup.
Usage
az postgres flexible-server restore --restore-time
--source-server
[--ids]
[--location]
[--name]
[--no-wait]
[--resource-group]
[--subscription]
Example:
Restore a server from this 2021-03-03T13:10:00Z
backup snapshot (ISO8601 format).
--restore-time
is an optional parameter whose default corresponds to current date and time.
az postgres flexible-server restore \
--name mydemoserver-restored \
--resource-group myresourcegroup \
--restore-time "2021-05-05T13:10:00Z" \
--source-server mydemoserver
Time taken to restore will depend on the size of the data stored in the server.
Geo-Restore a server from geo-backup to a new server
You can run the following command to restore a server to an earliest existing backup.
Usage
az postgres flexible-server geo-restore --source-server
--location
[--name]
[--no-wait]
[--resource-group]
[--subscription]
Example: To perform a geo-restore of a source server 'mydemoserver' which is located in region East US to a new server 'mydemoserver-restored' in its geo-paired location West US with the same network setting you can run following command.
az postgres flexible-server geo-restore \
--name mydemoserver-restored \
--resource-group myresourcegroup \
--location "West US" \
--source-server mydemoserver
Perform post-restore tasks
After the restore is completed, you should perform the following tasks to get your users and applications back up and running:
- If the new server is meant to replace the original server, redirect clients and client applications to the new server
- Ensure appropriate VNet rules are in place for users to connect. These rules aren't copied over from the original server.
- Ensure appropriate logins and database level permissions are in place
- Configure alerts as appropriate for the newly restore server
Next steps
- Learn about business continuity
- Learn about backup & recovery