Skip to content

Commit c331b4c

Browse files
authored
Merge pull request #177358 from aditivgupta/frp
Changes for Available Backups/Fastest Restore Point/Server Parameters
2 parents 5ad11b5 + 7db8f1d commit c331b4c

11 files changed

+77
-11
lines changed

articles/mysql/flexible-server/concepts-backup-restore.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,10 @@ The primary means of controlling the backup storage cost is by setting the appro
6565
> [!IMPORTANT]
6666
> Backups from a database server configured in a zone redundant high availability configuration happens from the primary database server as the overhead is minimal with snapshot backups.
6767
68+
## View Available Full Backups
69+
70+
The Backup and Restore blade in the Azure portal lists the automated full backups taken daily once. One can use this blade to view the completion timestamps for all available full backups within the server’s retention period and to perform restore operations using these full backups. The list of available backups includes all full automated backups within the retention period, a timestamp showing the successful completion, a timestamp indicating how long a backup will be retained, and a restore action.
71+
6872
## Restore
6973

7074
In Azure Database for MySQL, performing a restore creates a new server from the original server's backups. There are two types of restore available:
@@ -99,10 +103,11 @@ Point-in-time restore is useful in multiple scenarios. Some of the use cases tha
99103
- User drops an important table or database
100104
- User application accidentally overwrites good data with bad data due to an application defect.
101105

102-
You can choose between a latest restore point and a custom restore point via [Azure portal](how-to-restore-server-portal.md).
106+
You can choose between latest restore point, custom restore point and fastest restore point (restore using full backup) via [Azure portal](how-to-restore-server-portal.md).
103107

104108
- **Latest restore point**: The latest restore point option helps you to restore the server to the timestamp when the restore operation was triggered. This option is useful to quickly restore the server to the most updated state.
105109
- **Custom restore point**: This will allow you to choose any point-in-time within the retention period defined for this flexible server. This option is useful to restore the server at the precise point in time to recover from a user error.
110+
- **Fastest restore point**: This option allows users to restore the server in the fastest time possible for a given day within the retention period defined for their flexible server. Fastest restore is possible by choosing the restore point-in-time at which the full backup is completed. This restore operation simply restores the full snapshot backup and doesn't warrant restore or recovery of logs which makes it fast. We recommend you select a full backup timestamp which is greater than the earliest restore point in time for a successful restore operation.
106111

107112
The estimated time of recovery depends on several factors including the database sizes, the transaction log backup size, the compute size of the SKU, and the time of the restore as well. The transaction log recovery is the most time consuming part of the restore process. If the restore time is chosen closer to the snapshot backup schedule, the restore operations are faster since transaction log application is minimal. To estimate the accurate recovery time for your server, we highly recommend testing it in your environment as it has too many environment specific variables.
108113

@@ -167,7 +172,7 @@ No, backups are triggered internally as part of the managed service and have no
167172
Azure Database for MySQL automatically creates server backups and stores them in user-configured, locally redundant storage or in geo-redundant storage. These backup files can't be exported. The default backup retention period is seven days. You can optionally configure the database backup from 1 to 35 days.
168173

169174
- **How can I validate my backups?**
170-
The best way to validate availability of valid backups is performing periodic point in time restores and ensuring backups are valid and restorable. Backup operations or files are not exposed to the end users.
175+
The best way to validate availability of successfully completed backups is to view the full automated backups taken within the retention period in the Backup and Restore blade. If a backup fails it will not be listed in the available backups list and our backup service will try every 20 mins to take a backup until a successful backup is taken. These backup failures are due to heavy transactional production loads on the server.
171176

172177
- **Where can I see the backup usage?**
173178
In the Azure portal, under Monitoring tab - Metrics section, you can find the [Backup Storage Used](./concepts-monitoring.md) metric which can help you monitor the total backup usage.

articles/mysql/flexible-server/concepts-limitations.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ The following are unsupported:
6363
- Connectivity method cannot be changed after creating the server. If the server is created with *Private access (VNet Integration)*, it cannot be changed to *Public access (allowed IP addresses)* after create, and vice versa
6464

6565
### Stop/start operation
66-
- Not supported with zone redundant HA configurations (both primary and standby).
6766
- Not supported with read replica configurations (both source and replicas).
6867

6968
### Scale operations

articles/mysql/flexible-server/concepts-read-replicas.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ After your application is successfully processing reads and writes, you have com
108108

109109
## Global transaction identifier (GTID)
110110

111-
Global transaction identifier (GTID) is a unique identifier created with each committed transaction on a source server and is OFF by default in Azure Database for MySQL Flexible serever. GTID is supported on versions 5.7 and 8.0. To learn more about GTID and how it's used in replication, refer to MySQL's [replication with GTID](https://dev.mysql.com/doc/refman/5.7/en/replication-gtids.html) documentation.
111+
Global transaction identifier (GTID) is a unique identifier created with each committed transaction on a source server and is OFF by default in Azure Database for MySQL Flexible server. GTID is supported on versions 5.7 and 8.0. To learn more about GTID and how it's used in replication, refer to MySQL's [replication with GTID](https://dev.mysql.com/doc/refman/5.7/en/replication-gtids.html) documentation.
112112

113113
The following server parameters are available for configuring GTID:
114114

articles/mysql/flexible-server/concepts-server-parameters.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,15 @@ MySQL stores the InnoDB table in different tablespaces based on the configuratio
6868

6969
Azure Database for MySQL Flexible Server supports at largest, **4 TB**, in a single data file. If your database size is larger than 4 TB, you should create the table in [innodb_file_per_table](https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_file_per_table) tablespace. If you have a single table size larger than 4 TB, you should use the partition table.
7070

71+
### innodb_log_file_size
72+
73+
[innodb_log_file_size](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_log_file_size) is the size in bytes of each [log file](https://dev.mysql.com/doc/refman/8.0/en/glossary.html#glos_log_file) in a [log group](https://dev.mysql.com/doc/refman/8.0/en/glossary.html#glos_log_group). The combined size of log files [(innodb_log_file_size](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_log_file_size) * [innodb_log_files_in_group](https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_log_files_in_group)) cannot exceed a maximum value that is slightly less than 512GB). A bigger log file size is better for performance, but it has a drawback that the recovery time after a crash will be high. You need to balance recovery time in the rare event of a crash recovery versus maximizing throughput during peak operations. These can also result in longer restart times. You can configure innodb_log_size to any of these values - 256MB, 512MB, 1GB or 2GB for Azure database for MySQL Flexible server. The parameter is static and requires a restart.
74+
75+
> [!NOTE]
76+
> If you have changed the parameter innodb_log_file_size from default, check if the value of "show global status like 'innodb_buffer_pool_pages_dirty'" stays at 0 for 30 seconds to avoid restart delay.
77+
78+
79+
7180
### max_connections
7281

7382
The value of max_connection is determined by the memory size of the server.

articles/mysql/flexible-server/connect-azure-cli.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ This quickstart demonstrates how to connect to an Azure Database for MySQL Flexi
2121

2222
[!INCLUDE [flexible-server-free-trial-note](../includes/flexible-server-free-trial-note.md)]
2323
- Install [Azure CLI](/cli/azure/install-azure-cli) latest version (2.20.0 or above)
24-
- Login using Azure CLI with ```az login``` command
24+
- Log in using Azure CLI with ```az login``` command
2525
- Turn on parameter persistence with ```az config param-persist on```. Parameter persistence will help you use local context without having to repeat a lot of arguments like resource group or location etc.
2626

27-
## Create an MySQL Flexible Server
27+
## Create a MySQL Flexible Server
2828

2929
The first thing we'll create is a managed MySQL server. In [Azure Cloud Shell](https://shell.azure.com/), run the following script and make a note of the **server name**, **username** and **password** generated from this command.
3030

@@ -69,9 +69,9 @@ Successfully connected to mysqldemoserver1.
6969
```
7070
If the connection failed, try these solutions:
7171
- Check if port 3306 is open on your client machine.
72-
- if your server administrator user name and password are correct
73-
- if you have configured firewall rule for your client machine
74-
- if you have configured your server with private access in virtual networking, make sure your client machine is in the same virtual network.
72+
- If your server administrator user name and password are correct
73+
- If you have configured firewall rule for your client machine
74+
- If you have configured your server with private access in virtual networking, make sure your client machine is in the same virtual network.
7575

7676
## Run multiple queries using interactive mode
7777
You can run multiple queries using the **interactive** mode. To enable interactive mode, run the following command

articles/mysql/flexible-server/how-to-read-replicas-cli.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ author: savjani
55
ms.author: pariks
66
ms.service: mysql
77
ms.topic: how-to
8-
ms.date: 10/23/2020
8+
ms.date: 10/23/2021
99
ms.custom: devx-track-azurecli
1010
---
1111

articles/mysql/flexible-server/how-to-restore-server-portal.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,54 @@ Follow these steps to restore your flexible server using an earliest existing ba
4242

4343
8. A notification will be shown that the restore operation has been initiated.
4444

45+
46+
## Restore to a fastest restore point
47+
48+
Follow these steps to restore your flexible server using an existing full backup as the fastest restore point.
49+
50+
1. In the [Azure portal](https://portal.azure.com/), choose your flexible server that you want to restore the backup from.
51+
52+
2. Click **Overview** from the left panel.
53+
54+
3. From the overview page, click **Restore**.
55+
56+
4. Restore page will be shown with an option to choose between Latest restore point, Custom restore point and Fastest Restore Point.
57+
58+
5. Select option **Select fastest restore point (Restore using full backup)**.
59+
60+
6. Select the desired full backup from the **Fastest Restore Point (UTC)** drop down list .
61+
62+
:::image type="content" source="./media/how-to-restore-server-portal/fastest-restore-point.png" alt-text="Fastest Restore Point":::
63+
64+
7. Provide a new server name in the **Restore to new server** field.
65+
66+
8. Click **Review + Create**.
67+
68+
9. Post clicking **Create**, a notification will be shown that the restore operation has been initiated.
69+
70+
## Restore from a full backup through the Backup and Restore blade
71+
72+
Follow these steps to restore your flexible server using an existing full backup.
73+
74+
1. In the [Azure portal](https://portal.azure.com/), choose your flexible server that you want to restore the backup from.
75+
76+
2. Click **Backup and Restore** from the left panel.
77+
78+
3. View Available Backups page will be shown with the option to restore from all full automated backups taken for the server within the retention period.
79+
80+
4. Select the desired full backup from the list by clicking on corresponding **Restore** action.
81+
82+
:::image type="content" source="./media/how-to-restore-server-portal/view-available-backups.png" alt-text="View Available Backups":::
83+
84+
5. Restore page will be shown with the Fastest Restore Point option selected by default and the desired full backup timestamp selected on the View Available backups page.
85+
86+
6. Provide a new server name in the **Restore to new server** field.
87+
88+
7. Click **Review + Create**.
89+
90+
8. Post clicking **Create**, a notification will be shown that the restore operation has been initiated.
91+
92+
4593
## Geo-restore to latest restore point
4694

4795
1. In the [Azure portal](https://portal.azure.com/), choose your flexible server that you want to restore the backup from.
43.3 KB
Loading
140 KB
Loading

articles/mysql/flexible-server/quickstart-create-server-cli.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ms.custom: mvc, devx-track-azurecli
1212

1313
# Quickstart: Create an Azure Database for MySQL Flexible Server using Azure CLI
1414

15-
[[!INCLUDE[applies-to-mysql-flexible-server](../includes/applies-to-mysql-flexible-server.md)]
15+
[!INCLUDE[applies-to-mysql-flexible-server](../includes/applies-to-mysql-flexible-server.md)]
1616

1717

1818
This quickstart shows how to use the [Azure CLI](/cli/azure/get-started-with-azure-cli) commands in [Azure Cloud Shell](https://shell.azure.com) to create an Azure Database for MySQL Flexible Server in five minutes.

0 commit comments

Comments
 (0)