Skip to content

Commit

Permalink
Merge pull request #65 from skysqlinc/DEV-806-Restore-from-Your-Own-B…
Browse files Browse the repository at this point in the history
…ucket

add SkySQL Migraion Options and Managed SkySQL migraions pages, refac…
  • Loading branch information
NedPK authored Oct 8, 2024
2 parents 99da4b6 + 5d11d03 commit cd92701
Show file tree
Hide file tree
Showing 4 changed files with 102 additions and 26 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ Ensure that your SkySQL servce deploymned configuration is compatible with your
<li> <b>Server version</b> - Ensure that the SkySQL server version is compatible with the source database version. </li>
<li><b>Instance size</b> - Ensure that the SkySQL instance is compatible with the source database instance type and size</li>
<li><b>Storage</b> - Ensure that the SkySQL storage type and size is compatible with the source database</li>
</br>
</details>
---

Expand Down Expand Up @@ -62,7 +61,9 @@ SkySQL Managed Migration is a REST-based service that handles the migration proc

### Option 2: Custom Migration

For most small, mid-size and large migrations SkySQL Managed Migration is the quickest and safest option. However, for large migrations or migrations with specific requirements, you and your team may require more flexibility and control over the migration process. In these cases, you and your team can design a custom migration plan considering the steps suggested below.
For most small, mid-size and large migrations SkySQL Managed Migration is the quickest and safest option. However, for large migrations or migrations with specific requirements, you and your team may require more flexibility and control over the migration process. In these cases, you and your team can design a custom migration plan considering the options suggested below.

- [Migrating Using a Logical Dump and Replication](https://skysqlinc.github.io/skysql-docs/Data%20loading,%20Migration/Migrating%20Using%20a%20Logical%20Dump%20and%20Replication/)
- [Importing data using Mariadb Import](./Install-mariadb-import.md)
- [Importing using CSV Data](./Import-CSV-data.md)
- [Replicating Data from an External DB](https://skysqlinc.github.io/skysql-docs/Data%20loading,%20Migration/Replicating%20data%20from%20external%20DB/)
69 changes: 64 additions & 5 deletions docs/Data loading, Migration/README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,69 @@
# Data loading, Migration
# Migrate your database to SkySQL

[Install Mariadb-dump](<Install Mariadb-dump>)
SkySQL provides a range of options to suit different migration scenarios.
<ul>
<li> Databases can be migrated to SkySQL from many different database platforms, including Oracle, MySQL, PostgreSQL, Microsoft SQL Server, IBM DB2, and more. </li>
<li> SkySQL supports migraion from both on-premise and cloud-based infrastructure and provides a range of options to suit different migration scenarios. </li>
</ul>

[Install mariadb-import](<Install mariadb-import>)
Below are the most common scenarios for database migration to SkySQL.

[Import CSV data](<Import CSV data>)
---
## Prerequisites

[Migrating Using a Logical Dump and Replication](<Migrating Using a Logical Dump and Replication>)
1. An active SkySQL account.
2. An existing source database with the IP added to your SkySQL allowlist.

<details>
<summary>Considerations</summary>
<br>

Ensure that your SkySQL servce deploymned configuration is compatible with your existing source database one, including:
<ul>
<li><b>Deployment region</b> - Ensure that the SkySQL deployment region is the same as the source database region.</li>
<li><b>Topology</b> - Enterprise Server Single node or with Replica(s)</li>
<li> <b>Server version</b> - Ensure that the SkySQL server version is compatible with the source database version. </li>
<li><b>Instance size</b> - Ensure that the SkySQL instance is compatible with the source database instance type and size</li>
<li><b>Storage</b> - Ensure that the SkySQL storage type and size is compatible with the source database</li>
</details>
---

## SkyDBA Assisted Migration

- Existing customers can submit a [support case](https://support.skysql.com) to request assistance with a migration.
- New customers can [contact us](mailto:[email protected]) to begin the migration planning process.

Our [SkyDBA team](https://skysqlinc.github.io/skysql-docs/FractionalDBA/) can help design a migration plan to suit your needs.

<details>
<summary>SkyDBA Assisted Migration Approach</summary>
<br>
We use a multi-step process to assist customers with migrations:
<ul>
<li><b>Assessment</b> of application requirements, inventory, and identified challenges</li>
<li><b>Schema Migration</b> including tables, constraints, indexes, and views</li>
<li><b>Application Code Migration</b> by porting and testing SQL and application code</li>
<li><b>Data Migration and Replication</b> with import of data, with conversion to the new schema, and ongoing inbound replication of new data</li>
<li><b>Quality Assurance</b> to assess data validity, data integrity, performance, accuracy of query results, stored code, and running code such as client applications, APIs, and batch jobs</li>
<li><b>Cutover</b> including final database preparation, fallback planning, switchover, and decommissioning of old databases</li>
</br>
</details>
---

## Self-Service Migration to SkySQL

SkySQL provides two diffeent options for self-service migration

### Option 1: Migrate using the SkySQL REST API
SkySQL Managed Migration is a REST-based service that handles the migration process, including data migration, schema migration, and user migration. It provides a follow us steps to set up a live replication of your database to SkySQL and various insights to monitor the migration process.

- [Sky SQL Managed Migration Tutorial](./SkySQL-managed-migration.md)

### Option 2: Custom Migration

For most small, mid-size and large migrations SkySQL Managed Migration is the quickest and safest option. However, for large migrations or migrations with specific requirements, you and your team may require more flexibility and control over the migration process. In these cases, you and your team can design a custom migration plan considering the options suggested below.

- [Migrating Using a Logical Dump and Replication](https://skysqlinc.github.io/skysql-docs/Data%20loading,%20Migration/Migrating%20Using%20a%20Logical%20Dump%20and%20Replication/)
- [Importing data using Mariadb Import](./Install-mariadb-import.md)
- [Importing using CSV Data](./Import-CSV-data.md)
- [Replicating Data from an External DB](https://skysqlinc.github.io/skysql-docs/Data%20loading,%20Migration/Replicating%20data%20from%20external%20DB/)
38 changes: 26 additions & 12 deletions docs/Data loading, Migration/SkySQL-managed-migration.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,26 @@
//TODO
//Steps to follow
0. Prerequisites
1. Dump using logical or physical backup using the steps mentioned in the [Backup and Restore](../Backup and Restore/README.md) restore from your own bucket section.
2. Upload the dump to S3/GCS bucket under your control
3. Call the migration API - ref -
[Sky SQL Managed Migration Tutorial](../Backup and Restore/Restore From Your Own Bucket.md)

4. To minimize downtime during migration, set up live binary-loggd based replication from your source database to the SkySQL database.
Click [here](<./Replicating data from external DB.md>) for a detailed walk through of the steps involved.

5 Add a section with migration insights
# SkySQL Managed Migration

## Prerequisites

1. An active SkySQL account. Identify requirements for your SkySQL implementation prior to [deployment](../Portal%20features/Launch%20page.md), including:
- Topology: Enterprise Server Single node or with Replica(s)
- [Instance size](../Reference%20Guide/Instance%20Size%20Choices.md)
- Storage requirements
- Desired server version

2. An existing source database with the IP added to your SkySQL allowlist.

## Migration Steps

1. Dump using logical or physical backup. Refer to the steps mentioned in the [Backup and Restore](../Backup%20and%20Restore/README.md) tutorial.

2. Upload the dump. Transfer the data dump to an S3/GCS bucket under your control.

3. Call the migration API. Refer to the [SkySQL Managed Migration Tutorial](../Backup%20and%20Restore/Restore%20From%20Your%20Own%20Bucket.md).

4. Start Replication. To minimize downtime during migration, set up live replication from your source database to your SkySQL database. Refer to the [Replicating data from external DB Tutorial](./Replicating%20data%20from%20external%20DB.md).

## Additional Resources
- [Backup with mariadb-dump](https://mariadb.com/kb/en/mariadb-dump/)
- [MariaDB Backup Documentation](https://mariadb.com/kb/en/mariadb-backup-overview/)
- [Advanced Backup Techniques](https://mariadb.com/kb/en/backup-and-restore-overview/)
16 changes: 9 additions & 7 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -117,13 +117,15 @@ nav:
- 'Backup and Restore/Restore Delete Examples.md'
- 'Backup and Restore/MariaDB Enterprise Backup.md'
- 'Data Loading, Migrations' :
- 'Data loading, Migration/README.md'
- 'Data loading, Migration/Migrate-your-database-to-SkySQL.md'
- 'Data loading, Migration/Import-CSV-data.md'
- 'Data loading, Migration/Install Mariadb-dump.md'
- 'Data loading, Migration/Install-mariadb-import.md'
- 'Data loading, Migration/Migrating Using a Logical Dump and Replication.md'
- 'Data loading, Migration/Replicating data from external DB.md'
- 'Data loading':
- 'Data loading, Migration/Import-CSV-data.md'
- 'Data loading, Migration/Install Mariadb-dump.md'
- 'Data loading, Migration/Install-mariadb-import.md'
- 'Data loading, Migration/Replicating data from external DB.md'
- 'Migrations' :
- 'Data loading, Migration/README.md'
- 'Data loading, Migration/SkySQL-managed-migration.md'
- 'Data loading, Migration/Migrating Using a Logical Dump and Replication.md'
- 'Data Offloading' :
- 'Data offloading/README.md'
- 'Data offloading/Replicating data from SkySQL to external database.md'
Expand Down

0 comments on commit cd92701

Please sign in to comment.