Skip to content

Commit 1644944

Browse files
authored
Merge pull request #264278 from MicrosoftDocs/release-preview-postgresql-migration-service
[PostgreSQL] New migration service release preview--scheduled release at 10AM of 1/30
2 parents 564b1e1 + e4a1ad5 commit 1644944

File tree

75 files changed

+1510
-91
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+1510
-91
lines changed

articles/postgresql/TOC.yml

Lines changed: 43 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -12,32 +12,6 @@
1212
items:
1313
- name: SSL root certificate expiring
1414
href: single-server/concepts-certificate-rotation.md
15-
- name: Shared documentation
16-
items:
17-
- name: Migration
18-
items:
19-
- name: Migrate Azure Database for PostgreSQL - Single Server to Azure Database for PostgreSQL - Flexible Server
20-
items:
21-
- name: Migration tool - Concepts
22-
href: migrate/concepts-single-to-flexible.md
23-
- name: Migration tool - Azure portal
24-
href: migrate/how-to-migrate-single-to-flexible-portal.md
25-
- name: Migration tool - Azure CLI
26-
href: migrate/how-to-migrate-single-to-flexible-cli.md
27-
- name: Common errors
28-
href: migrate/common-errors-and-special-scenarios-fms.md
29-
- name: Best practices for a seamless migration
30-
href: migrate/best-practices-seamless-migration-single-to-flexible.md
31-
- name: Troubleshoot networking and connectivity issues
32-
href: migrate/troubleshooting-networking-and-connectivity-issues.md
33-
- name: Migrate data with pg_dump
34-
href: migrate/how-to-migrate-using-dump-and-restore.md
35-
displayName: pg_dump, pg_restore
36-
- name: Minimal-downtime migration with DMS
37-
href: single-server/how-to-migrate-online.md
38-
displayName: dms, data migration service
39-
- name: Migrate from Oracle
40-
href: single-server/how-to-migrate-from-oracle.md
4115
- name: Versioning policy
4216
href: flexible-server/concepts-version-policy.md
4317
displayName: version, postgresql
@@ -434,7 +408,49 @@
434408
- name: Optimize performance when using pgvector
435409
href: flexible-server/how-to-optimize-performance-pgvector.md
436410
- name: pg_azure_storage
437-
href: flexible-server/reference-pg-azure-storage.md
411+
href: flexible-server/reference-pg-azure-storage.md
412+
- name: Migration
413+
items:
414+
- name: Migrate Single Server to Flexible Server
415+
items:
416+
- name: Migration tool - Concepts
417+
href: migrate/concepts-single-to-flexible.md
418+
- name: Migration tool - Azure portal
419+
href: migrate/how-to-migrate-single-to-flexible-portal.md
420+
- name: Migration tool - Azure CLI
421+
href: migrate/how-to-migrate-single-to-flexible-cli.md
422+
- name: Best practices for a seamless migration
423+
href: migrate/best-practices-seamless-migration-single-to-flexible.md
424+
- name: Troubleshoot networking and connectivity issues
425+
href: migrate/troubleshooting-networking-and-connectivity-issues.md
426+
- name: Migration Service
427+
items:
428+
- name: Overview
429+
href: migrate/migration-service/concepts-migration-service-postgresql.md
430+
- name: Tutorials
431+
items:
432+
- name: Migrate from on-premises and Azure VM
433+
href: migrate/migration-service/tutorial-migration-service-offline-iaas.md
434+
- name: Migrate from AWS RDS
435+
href: migrate/migration-service/tutorial-migration-service-offline-aws.md
436+
- name: Concepts
437+
items:
438+
- name: Premigration validation
439+
href: migrate/migration-service/concepts-premigration-migration-service.md
440+
- name: Best practices
441+
href: migrate/migration-service/best-practices-migration-service-postgresql.md
442+
- name: Known issues and limitations
443+
href: migrate/migration-service/concepts-known-issues-migration-service.md
444+
- name: How-to guides
445+
items:
446+
- name: Network setup
447+
href: migrate/migration-service/how-to-network-setup-migration-service.md
448+
- name: Migrate data with pg_dump
449+
href: migrate/how-to-migrate-using-dump-and-restore.md
450+
- name: Minimal-downtime migration with DMS
451+
href: single-server/how-to-migrate-online.md
452+
- name: Migrate from Oracle
453+
href: single-server/how-to-migrate-from-oracle.md
438454
- name: Azure Database for PostgreSQL - Single Server
439455
expanded: false
440456
items:

articles/postgresql/migrate/concepts-single-to-flexible.md

Lines changed: 48 additions & 42 deletions
Large diffs are not rendered by default.

articles/postgresql/migrate/how-to-migrate-single-to-flexible-portal.md

Lines changed: 28 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ The migration tool comes with a simple, wizard-based experience on the Azure por
5252

5353
:::image type="content" source="./media/concepts-single-to-flexible/flexible-overview.png" alt-text="Screenshot of the flexible Overview page." lightbox="./media/concepts-single-to-flexible/flexible-overview.png":::
5454

55-
4. Select the **Migrate from Single Server** button to start a migration from Single Server to Flexible Server. If this is the first time you're using the migration tool, an empty grid appears with a prompt to begin your first migration.
55+
4. Select the **Create** button to start a migration from Single Server to Flexible Server. If this is the first time you're using the migration tool, an empty grid appears with a prompt to begin your first migration.
5656

5757
:::image type="content" source="./media/concepts-single-to-flexible/flexible-migration-grid.png" alt-text="Screenshot of the Migration tab in flexible." lightbox="./media/concepts-single-to-flexible/flexible-migration-grid.png":::
5858

@@ -89,6 +89,8 @@ The first tab is **Setup**. Just in case you missed it, allowlist necessary exte
8989

9090
**Migration name** is the unique identifier for each migration to this Flexible Server target. This field accepts only alphanumeric characters and doesn't accept any special characters except a hyphen (-). The name can't start with a hyphen and should be unique for a target server. No two migrations to the same Flexible Server target can have the same name.
9191

92+
**Source server type** indicates the source. In this case, it is Azure Database for PostgreSQL Single server
93+
9294
**Migration Option** gives you the option to perform validations before triggering a migration. You can pick any of the following options
9395
- **Validate** - Checks your server and database readiness for migration to the target.
9496
- **Migrate** - Skips validations and starts migrations.
@@ -102,42 +104,46 @@ It's always a good practice to choose **Validate** or **Validate and Migrate** o
102104

103105
If **Online** migration is selected, it requires Logical replication to be turned on in the source Single server. If it's not turned on, the migration tool automatically turns on logical replication at the source Single server. Replication can also be set up manually under **Replication** tab in the Single server side pane by setting the Azure replication support level to **Logical**. Either approach restarts the source single server.
104106

105-
Select the **Next** button.
107+
Select the **Next : Connect to Source** button.
106108

107109
### Source tab
108110

109111
The **Source** tab prompts you to give details related to the Single Server that is the source of the databases.
110112

111-
:::image type="content" source="./media/concepts-single-to-flexible/flexible-migration-source.png" alt-text="Screenshot of source database server details." lightbox="./media/concepts-single-to-flexible/flexible-migration-source.png":::
112-
113113
After you make the **Subscription** and **Resource Group** selections, the dropdown list for server names shows Single Servers under that resource group across regions. Select the source that you want to migrate databases from. You can migrate databases from a Single Server to a target Flexible Server in the same region. Cross region migrations are enabled only for servers in India, China and UAE.
114114

115115
After you choose the Single Server source, the **Location**, **PostgreSQL version**, and **Server admin login name** boxes are populated automatically. The server admin login name is the admin username used to create the Single Server. In the **Password** box, enter the password for that admin user. The migration tool performs the migration of single server databases as the admin user.
116116

117-
After filling out all the fields, select the **Next** button.
117+
After filling out all the fields, click the **Connect to source** link. This validates that the source server details entered are correct and source server is reachable.
118+
119+
:::image type="content" source="./media/concepts-single-to-flexible/flexible-migration-source.png" alt-text="Screenshot of source database server details." lightbox="./media/concepts-single-to-flexible/flexible-migration-source.png":::
120+
121+
Select the **Next : Select migration target** button to continue.
118122

119123
### Target tab
120124

121-
The **Target** tab displays metadata for the Flexible Server target, like subscription name, resource group, server name, location, and PostgreSQL version.
125+
The **Target** tab displays metadata for the Flexible Server target, such as subscription name, resource group, server name, location, and PostgreSQL version.
122126

123127
:::image type="content" source="./media/concepts-single-to-flexible/flexible-migration-target.png" alt-text="Screenshot of target database server details." lightbox="./media/concepts-single-to-flexible/flexible-migration-target.png":::
124128

125-
For **Server admin login name**, the tab displays the admin username used during the creation of the Flexible Server target. Enter the corresponding password for the admin user.
129+
For **Server admin login name**, the tab displays the admin username used during the creation of the Flexible Server target. Enter the corresponding password for the admin user. After filling out the password, click the **Connect to target** link. This validates that the target server details entered are correct and target server is reachable.
126130

127-
Select the **Next** button.
131+
Click the **Next** button to select the databases to migrate.
128132

129133
### Select Database(s) for Migration tab
130134

131-
Under this tab, there's a list of user databases inside the Single Server. You can select and migrate up to eight databases in a single migration attempt. If there are more than eight user databases, the migration process is repeated between the source and target servers for the next set of databases.
135+
Under this tab, there's a list of user databases inside the Single Server. You can select and migrate up to eight databases in a single migration attempt. If there are more than eight user databases, the migration process is repeated between the source and target servers for the next set of databases. By default, selected databases with the same name on the target are overwritten.
132136

133137
:::image type="content" source="./media/concepts-single-to-flexible/flexible-migration-database.png" alt-text="Screenshot of Databases to migrate." lightbox="./media/concepts-single-to-flexible/flexible-migration-database.png":::
134138

135139
>[!NOTE]
136140
> The tool migrates only user databases. System databases or template databases such as template0, template1 will not be migrated.
137141
138-
### Review
142+
Click the **Next** button to review the details.
143+
144+
### Summary
139145

140-
The **Review** tab summarizes all the details for creating the validation or migration. Review the details and click on the start button.
146+
The **Summary** tab summarizes all the details for creating the validation or migration. Review the details and click on the start button.
141147

142148
:::image type="content" source="./media/concepts-single-to-flexible/flexible-migration-review.png" alt-text="Screenshot of details to review for the migration." lightbox="./media/concepts-single-to-flexible/flexible-migration-review.png":::
143149

@@ -147,7 +153,7 @@ After you click the start button, a notification appears in a few seconds to say
147153

148154
:::image type="content" source="./media/concepts-single-to-flexible/flexible-migration-monitor.png" alt-text="Screenshot of recently created migration details." lightbox="./media/concepts-single-to-flexible/flexible-migration-monitor.png":::
149155

150-
The grid that displays the migrations has these columns: **Name**, **Status**, **Source DB server**, **Resource group**, **Region**, **Databases**, and **Start time**. The entries are displayed in the descending order of the start time with the most recent entry on the top.
156+
The grid that displays the migrations has these columns: **Name**, **Status**, **Migration type**, **Migration mode**, **Source server**, **Source server type**, **Databases**, **Start time** and **Duration**. The entries are displayed in the descending order of the start time with the most recent entry on the top.
151157

152158
You can use the refresh button to refresh the status of the validation or migration.
153159
You can also select the migration name in the grid to see the associated details.
@@ -164,16 +170,16 @@ The validation moves to the **Succeeded** state if all validations are either in
164170

165171
:::image type="content" source="./media/concepts-single-to-flexible/validation-successful.png" alt-text="Screenshot of the validation grid." lightbox="./media/concepts-single-to-flexible/validation-successful.png":::
166172

167-
The validation grid has the following columns
168-
- **Finding** - Represents the validation rules that are used to check readiness for migration.
169-
- **Finding Status** - Represents the result for each rule and can have any of the three values
173+
The validation grid has the
174+
- **Validation details for instance** and **Validation details for databases** sections which represent the validation rules that are used to check readiness for migration.
175+
- **Validation Status** - Represents the result for each rule and can have any of the three values
170176
- **Succeeded** - If no errors were found.
171177
- **Failed** - If there are validation errors.
172178
- **Warning** - If there are validation warnings.
173-
- **Impacted Object** - Represents the object name for which the errors or warnings are raised.
174-
- **Object Type** - This can have the value **Database** for database level validations and **Instance** for server level validations.
179+
- **Duration** - Time taken for the Validation operation.
180+
- **Start and End time** - Start and end time of the validation operation in UTC.
175181

176-
The validation moves to **Validation Failed** state if there are any errors in the validation. Click on the **Finding** in the grid whose status is **Failed** and a fan-out pane gives the details and the corrective action you should take to avoid this error.
182+
The **Validation status** moves to **Failed** state if there are any errors in the validation. Click on the **Validation name** or **Database name** validation that has failed and a fan-out pane gives the details and the corrective action you should take to avoid this error.
177183

178184
:::image type="content" source="./media/concepts-single-to-flexible/validation-failed.png" alt-text="Screenshot of the validation grid with failed status." lightbox="./media/concepts-single-to-flexible/validation-failed.png":::
179185

@@ -199,16 +205,16 @@ In this option, validations are performed first before migration starts. After t
199205
- If validation has errors, the migration moves into a **Failed** state.
200206
- If validation completes without any error, the migration starts and the workflow will move into the sub state of **Migrating Data**.
201207

202-
You can see the results of validation under the **Validation** tab and monitor the migration under the **Migration** tab.
208+
You can see the results of **Validate and Migrate** once the operation is complete.
203209

204210
:::image type="content" source="./media/concepts-single-to-flexible/validate-and-migrate-1.png" alt-text="Screenshot showing validations tab in details page." lightbox="./media/concepts-single-to-flexible/validate-and-migrate-1.png":::
205211

206-
:::image type="content" source="./media/concepts-single-to-flexible/validate-and-migrate-2.png" alt-text="Screenshot showing migrations tab in details page." lightbox="./media/concepts-single-to-flexible/validate-and-migrate-2.png":::
207-
208212
### Online migration
209213

210214
> [!NOTE]
211-
> Support for **Online** migrations is currently available in UK South, South Africa North, UAE North, and all regions across Asia and Australia.
215+
> Support for **Online** migrations is currently available in Central US, France Central, Germany West Central, North Central US, South Central US, North Europe, all West US regions, UK South, South Africa North, UAE North, and all regions across Asia and Australia. In other regions, Online migration can be enabled by the user at a subscription-level by registering for the **Online PostgreSQL migrations to Azure PostgreSQL Flexible server** preview feature as shown in the image.
216+
217+
:::image type="content" source="./media/concepts-single-to-flexible/online-migration-feature-switch.png" alt-text="Screenshot of online PostgreSQL migrations to Azure PostgreSQL Flexible server." lightbox="./media/concepts-single-to-flexible/online-migration-feature-switch.png":::
212218

213219
In case of both **Migrate** as well as **Validate and Migrate**, completion of the Online migration requires another step - a Cutover action is required from the user. After the copy/clone of the base data is complete, the migration moves to `WaitingForUserAction` state and `WaitingForCutoverTrigger` substate. In this state, user can trigger cutover from the portal by selecting the migration.
214220

124 KB
Loading
212 KB
Loading
121 KB
Loading
128 KB
Loading
56.3 KB
Loading
68.8 KB
Loading
192 KB
Loading

0 commit comments

Comments
 (0)