diff --git a/.github/vale/styles/config/vocabularies/Aiven/accept.txt b/.github/vale/styles/config/vocabularies/Aiven/accept.txt index 3e855f1e7..b65da661f 100644 --- a/.github/vale/styles/config/vocabularies/Aiven/accept.txt +++ b/.github/vale/styles/config/vocabularies/Aiven/accept.txt @@ -217,8 +217,9 @@ Mezmo MirrorMaker MongoDB multicast +mydumper myhoard -myhoard +myloader MySQL mysqldump mysqlsh @@ -376,6 +377,8 @@ upsert URIs? UUIDs? Valkey +vCPU +vCPUs vectorizing virtualized VMs? diff --git a/docs/platform/concepts/service_backups.md b/docs/platform/concepts/service_backups.md index 564194c30..97feb4e5e 100644 --- a/docs/platform/concepts/service_backups.md +++ b/docs/platform/concepts/service_backups.md @@ -5,6 +5,7 @@ title: Service backups import ConsoleLabel from "@site/src/components/ConsoleIcons"; import AutoDelete from "@site/static/includes/auto-delete-poweredoff.md"; import EditBackUpSchedule from "@site/static/includes/edit-backup-schedule.md"; +import EarlyBadge from "@site/src/components/Badges/EarlyBadge"; import Variables from "@site/static/variables.json"; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -30,8 +31,11 @@ backups with the appropriate tooling: - [PostgreSQL®](https://www.postgresql.org/docs/current/app-pgdump.html): `pgdump` -- [MySQL®](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html): - `mysqldump` +- [MySQL®](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) + + - `mysqldump` for small or medium-sized databases + - [`mydumper`](https://github.com/mydumper/mydumper) for large databases + - [Caching](https://redis.io/docs/connect/cli/#remote-backups-of-rdb-files): `redis-cli` - [Cassandra®](https://docs.datastax.com/en/cql-oss/3.1/cql/cql_reference/copy_r.html) @@ -246,6 +250,12 @@ with the open source [myhoard](https://github.com/aiven/myhoard) software. Myhoard uses [Percona XtraBackup](https://www.percona.com/) internally for taking full (or incremental) snapshots for MySQL. +For manual backups and migrations, you can use: + +- [`mysqldump`](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) for small or + medium-sized databases +- [`mydumper`](https://github.com/mydumper/mydumper) for large databases + #### Edit the backup schedule diff --git a/docs/products/mysql/howto/do-check-service-migration.md b/docs/products/mysql/howto/do-check-service-migration.md index 3ca5edc0a..abc148526 100644 --- a/docs/products/mysql/howto/do-check-service-migration.md +++ b/docs/products/mysql/howto/do-check-service-migration.md @@ -1,5 +1,6 @@ --- -title: Perform pre-migration check +title: Perform pre-migration checks +sidebar_label: Pre-migration check --- Learn how to find potential errors before starting your database migration process. This can be done by using either the [Aiven CLI](https://github.com/aiven/aiven-client) or the [Aiven REST API](https://api.aiven.io/doc/#section/Introduction). diff --git a/docs/products/mysql/howto/migrate-database-mysqldump.md b/docs/products/mysql/howto/migrate-database-mysqldump.md index 5ab8ea92d..e9f03467f 100644 --- a/docs/products/mysql/howto/migrate-database-mysqldump.md +++ b/docs/products/mysql/howto/migrate-database-mysqldump.md @@ -1,57 +1,85 @@ --- -title: Backup and restore Aiven for MySQL® data using mysqldump +title: Backup and restore Aiven for MySQL® with mysqldump or mydumper sidebar_label: Backup and restore --- import MysqlMigrationFreeze from "@site/static/includes/mysql-migration-freeze.md"; +import MydumperNote from "@site/static/includes/mydumper-ea.md"; +import RelatedPages from "@site/src/components/RelatedPages"; +import ConsoleLabel from "@site/src/components/ConsoleIcons"; +import EarlyBadge from "@site/src/components/Badges/EarlyBadge"; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; -Backing up your Aiven for MySQ® data to another storage service is a good way to ensure access to your data in case a failure occurs. -Learn how to copy your Aiven for MySQL data to a file, back it up to another Aiven -for MySQL database, and restore it using [`mysqldump`](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html). +Copy your Aiven for MySQL® data to a file, back it up to another Aiven for MySQL database, and restore it using [`mysqldump/restore`](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) or [`mydumper/myloader`](https://github.com/mydumper/mydumper). + + ## Prerequisites -- The `mysqldump` - [tool](https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html) - installed. See the [official - MySQL](https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-install.html) - documentation on how to install it. -- A source MySQL® database to copy your data from, referred to as `source-db`. +Make sure your service has the required computational power (vCPUs) and +memory capacity to process data migration without resource exhaustion or downtime. + + + + +- [`mysqldump` tool](https://dev.mysql.com/doc/refman/8.4/en/mysqldump.html): + [install](https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-install.html) if + missing +- Source database to copy your data from: `source-db` +- Target database to dump your `source-db` data to: `target-db` + + + + + + +
+
- You can use Aiven for MySQL databases for both the `source-db` and `target-db`. - [Create additional Aiven for MySQL® databases](/docs/products/mysql/howto/create-database) - as/if needed. +- [`mydumper`](https://github.com/mydumper/mydumper) tool + ([install](https://mydumper.github.io/mydumper/docs/html/installing.html) if missing) +- Source database to copy your data from: `source-db` +- Target database to dump your `source-db` data to: `target-db` -- A target MySQL database to dump your `source-db` data to, referred to as `target-db`. -- Recommended: Pick a plan size that is large enough to store your data, so you can - limit the downtime if you're performing a migration. +
+
+ +You can use Aiven for MySQL databases both as `source-db` and as `target-db`. +[Create additional Aiven for MySQL® databases](/docs/products/mysql/howto/create-database) +as needed. ## Back up the data -### Variables + + + +### Collect connection details + +To back up the `source-db` data to the `mydb_backup.sql` file, collect +connection details on your Aiven for MySQL `source-db` service: -To backup the `source-db` data to a file called `mydb_backup.sql` you -need to collect some information about your Aiven for MySQL `source-db` -database. Go to [Aiven Console](https://console.aiven.io/) > your Aiven -for MySQL `source-db` service > **Overview** > the **Connection -information** section and find the following information: +1. Log in to the [Aiven Console](https://console.aiven.io/) and go to your `source-db` + service page. +1. On the page, find **Connection information** and note + the following: - | Variable | Description | - | -------------------- | ------------------------------------------- | - | `SOURCE_DB_HOST` | **Host** name for the connection | - | `SOURCE_DB_USER` | **User** name for the connection | - | `SOURCE_DB_PORT` | Connection **Port** number | - | `SOURCE_DB_PASSWORD` | Connection **Password** | - | `DEFAULTDB` | Database that contains the `source-db` data | + | Variable | Description | + | -------------------- | ------------------------------------------- | + | `SOURCE_DB_HOST` | **Host** name for the connection | + | `SOURCE_DB_USER` | **User** name for the connection | + | `SOURCE_DB_PORT` | Connection **Port** number | + | `SOURCE_DB_PASSWORD` | Connection **Password** | + | `DEFAULTDB` | Database that contains the `source-db` data | -### Commands +### Back up to a file -Use the following command to back up your Aiven for MySQL data to a file -named `mydb_backup.sql`: +Use the following command to back up your Aiven for MySQL data to the `mydb_backup.sql` +file: -```shell +```bash mysqldump \ -p DEFAULTDB -P SOURCE_DB_PORT \ -h SOURCE_DB_HOST --single-transaction \ @@ -79,15 +107,65 @@ Identifiers](https://dev.mysql.com/doc/refman/5.7/en/replication-gtids-concepts. The reason is that GTID's are not available with MyISAM. ::: + + + + + +
+
+ +### Collect connection details + +To backup the `source-db` data to the `mydb_backup_dir` directory, collect +connection details on your Aiven for MySQL `source-db` service: + +1. Log in to the [Aiven Console](https://console.aiven.io/) and go to your `source-db` + service page. +1. On the page, find **Connection information** and note + the following: + + | Variable | Description | + | -------------------- | ------------------------------------------- | + | `SOURCE_DB_HOST` | **Host** name for the connection | + | `SOURCE_DB_USER` | **User** name for the connection | + | `SOURCE_DB_PORT` | Connection **Port** number | + | `SOURCE_DB_PASSWORD` | Connection **Password** | + | `DEFAULTDB` | Database that contains the `source-db` data | + +### Back up to a directory + +To back up your data with `mydumper`, run: + +```bash +mydumper \ +--host SOURCE_DB_HOST \ +--user SOURCE_DB_USER \ +--password SOURCE_DB_PASSWORD \ +--port SOURCE_DB_PORT \ +--database DEFAULTDB \ +--outputdir ./mydb_backup_dir +``` + +This creates the `mydb_backup_dir` directory containing the backup files. + +
+
+ ## Restore the data -### Variables + + -To restore data saved in a file to an Aiven for MySQL database, you need -to include the connection information for the service in the `mysqldump` -command. Go to [Aiven Console](https://console.aiven.io/) > your Aiven -for MySQL `target-db` service > **Overview** > the **Connection -information** section and find the following information: +### Collect connection details + +To restore the saved data from the file to your `target-db`, collect +connection details on your Aiven for MySQL `target-db` service: + +1. Log in to the [Aiven Console](https://console.aiven.io/) and go to your `target-db` + service page. +1. On the page, find **Connection information** and note + the following: | Variable | Description | | -------------------- | ------------------------------------------- | @@ -97,12 +175,11 @@ information** section and find the following information: | `TARGET_DB_PASSWORD` | Connection **Password** | | `DEFAULTDB` | Database that contains the `target-db` data | -### Commands +### Restore from the file -Run the following command to load your saved data into your Aiven for -MySQL database: +Run the following command to load the saved data into your `target-db` service: -```shell +```bash mysql \ -p DEFAULTDB -P TARGET_DB_PORT \ -h TARGET_DB_HOST \ @@ -110,13 +187,58 @@ mysql \ --password < mydb_backup.sql ``` -The password will be requested at the prompt. You can paste -`TARGET_DB_PASSWORD` into the terminal. Your data should be stored in -your Aiven for MySQL `target-db`. See the `mysqlcheck` -[command](https://dev.mysql.com/doc/refman/8.0/en/mysqlcheck.html) to -perform further analysis of your current MySQL data. + + + + + +
+
+ +### Collect connection details + +To restore the saved data from the directory to your `target-db`, collect +connection details on your Aiven for MySQL `target-db` service: + +1. Log in to the [Aiven Console](https://console.aiven.io/) and go to your `target-db` + service page. +1. On the page, find **Connection information** and note + the following: + + | Variable | Description | + | -------------------- | ------------------------------------------- | + | `TARGET_DB_HOST` | **Host** name for the connection | + | `TARGET_DB_USER` | **User** name for the connection | + | `TARGET_DB_PORT` | Connection **Port** number | + | `TARGET_DB_PASSWORD` | Connection **Password** | + | `DEFAULTDB` | Database that contains the `target-db` data | + +### Restore from the directory + +Use `myloader` to restore the data from the `mydumper` backup: + +```bash +myloader \ +--host TARGET_DB_HOST \ +--user TARGET_DB_USER \ +--password TARGET_DB_PASSWORD \ +--port TARGET_DB_PORT \ +--database DEFAULTDB \ +--directory ./mydb_backup_dir +``` + +
+
+ +When the password is requested at the prompt, paste `TARGET_DB_PASSWORD` into the terminal. +When the restore or load process is complete and the data is stored in your `target-db`, +you can use the +[`mysqlcheck` command](https://dev.mysql.com/doc/refman/8.0/en/mysqlcheck.html) to +perform data analysis. -## Read more about migrations + -- [How to migrate to Aiven for MySQL from an external MySQL](/docs/products/mysql/howto/migrate-from-external-mysql) -- [How to perform migration check on your Aiven for MySQL database](/docs/products/mysql/howto/migrate-from-external-mysql) +- [Service backups](/docs/platform/concepts/service_backups#aiven-for-mysql) +- [Migrate to Aiven via CLI](/docs/products/mysql/howto/migrate-from-external-mysql) +- [Migrate to Aiven via console](/docs/products/mysql/howto/migrate-db-to-aiven-via-console) +- [Perform pre-migration checks on your Aiven for MySQL® database](/docs/products/mysql/howto/do-check-service-migration) diff --git a/docs/products/mysql/howto/migrate-db-to-aiven-via-console.md b/docs/products/mysql/howto/migrate-db-to-aiven-via-console.md index df9b8c66d..e596ccd8f 100644 --- a/docs/products/mysql/howto/migrate-db-to-aiven-via-console.md +++ b/docs/products/mysql/howto/migrate-db-to-aiven-via-console.md @@ -1,16 +1,16 @@ --- -title: Migrate to Aiven for MySQL® using via Aiven Console +title: Migrate to Aiven for MySQL® via console sidebar_label: Migrate to Aiven via console --- import RelatedPages from "@site/src/components/RelatedPages"; import MysqlMigrationFreeze from "@site/static/includes/mysql-migration-freeze.md"; -Use the Console to migrate MySQL® databases to managed MySQL clusters in your Aiven organization. +Use the Aiven Console to migrate MySQL® databases to managed MySQL clusters in your Aiven organization. :::note To use the [Aiven CLI](/docs/tools/cli) to migrate your database, see -[Migrate to Aiven for MySQL from an external MySQL](/docs/products/mysql/howto/migrate-from-external-mysql). +[Migrate to Aiven via CLI](/docs/products/mysql/howto/migrate-from-external-mysql). ::: You can migrate the following: @@ -19,25 +19,22 @@ You can migrate the following: - Cloud-hosted MySQL databases - Managed MySQL database clusters on Aiven -The Console migration tool provides 2 migration methods: +The console migration tool provides two migration methods: -- **(Recommended) Continuous migration:** Used by default in the tool - and taken as the reference method. This method uses - logical replication so that data transfer is possible not only for - existing data in the source database when triggering the migration - but also for any data written to the source database during the - migration. +- **(Recommended) Continuous migration:** Used by default in the tool and taken as the + reference method. This method uses logical replication so that data transfer is + possible not only for existing data in the source database when triggering the + migration but also for any data written to the source database during the migration. -- **mysqldump**: Exports the current contents of the source database - into a text file and imports it to the target database. Any changes - written to the source database during the migration are **not +- **mysqldump/restore:** Exports the current contents of the source + database into a text file or backup directory and imports it to the target database. + Any changes written to the source database during the migration are **not transferred**. -When you trigger the migration setup in the Console and initial -checks detect that your source database does not support the logical -replication, you are notified about it via the migration wizard. To -continue with the migration, you can select the alternative -`mysqldump` migration method in the wizard. +When you trigger the migration setup in the console and initial checks detect that your +source database does not support logical replication, you are notified about it via the +migration wizard. To continue with the migration, the wizard allows you to select +`mysqldump/restore` as an alternative migration method. ## Prerequisites diff --git a/docs/products/mysql/howto/migrate-from-external-mysql.md b/docs/products/mysql/howto/migrate-from-external-mysql.md index c3de938dd..ec424b510 100644 --- a/docs/products/mysql/howto/migrate-from-external-mysql.md +++ b/docs/products/mysql/howto/migrate-from-external-mysql.md @@ -1,70 +1,91 @@ --- -title: Migrate to Aiven for MySQL® via Aiven CLI +title: Migrate to Aiven for MySQL® via CLI sidebar_label: Migrate to Aiven via CLI --- import RelatedPages from "@site/src/components/RelatedPages"; import MysqlMigrationFreeze from "@site/static/includes/mysql-migration-freeze.md"; +import EarlyBadge from "@site/src/components/Badges/EarlyBadge"; +import MydumperNote from "@site/static/includes/mydumper-ea.md"; -Aiven for MySQL® offers a managed process for migrating from an external MySQL into the Aiven-hosted database. It supports both a one-off dump-and-restore process and using the ongoing replication functionality built-in to MySQL. +Migrate your external MySQL database to an Aiven-hosted one using either a one-time dump-and-restore or continuous data synchronization through MySQL's built-in replication. :::note -To use the Aiven Console to migrate your database, see -[Migrate MySQL® databases to Aiven using the Console](/docs/products/mysql/howto/migrate-db-to-aiven-via-console). +To migrate your database using the Aiven Console, see +[Migrate MySQL® databases to Aiven via console](/docs/products/mysql/howto/migrate-db-to-aiven-via-console). ::: -The process will first do a `mysqldump` to seed the schema and bulk-copy the -data, if the preconditions are met for ongoing replication then it will -configure MySQL as a replica of the external database. +## How it works -## Requirements +The Aiven for MySQL migration process begins with an **initial data transfer** and can be +followed by **continuous data synchronization** if your setup supports it. -To perform a migration from an external MySQL to Aiven for MySQL the -following requirements need to be satisfied: +### Initial data transfer -- The source server needs to be publicly available or accessible via a - virtual private cloud (VPC) peering connection between the private - networks, and any firewalls need to be open to allow traffic between - the source and target servers. -- You have a user account on the source server with sufficient - privileges to create a user for the replication process. -- [GTID](https://dev.mysql.com/doc/refman/8.0/en/replication-gtids.html) - is enabled on the source database. To review the current GTID - setting, run the following command hon the source cluster: +A bulk copy of your data is first created. This is done using one of the following tools: - ```bash - show global variables like 'gtid_mode'; - ``` +- `mysqldump` for small and medium-sized databases +- `mydumper/myloader` for large databases + + + +### Continuous data synchronization + +After the initial data copy, the Aiven for MySQL service can be configured as a replica of +your external database, enabling ongoing data synchronization through MySQL's built-in +replication feature. + +## Prerequisites + +- The source server is publicly available or accessible via a virtual private cloud (VPC) + peering connection between the private networks, and firewalls are open to allow traffic + between the source and target servers. +- You have a user account on the source server with sufficient privileges to create a user + for the replication process. +- [GTID](https://dev.mysql.com/doc/refman/8.0/en/replication-gtids.html) is enabled on the + source database. Review the current GTID setting by running the following command on the + source cluster: + + ```bash + show global variables like 'gtid_mode'; + ``` + +- You have a running Aiven for MySQL service with a destination database. If missing, + create it in the [Aiven Console](/docs/products/mysql/get-started) or the + [Aiven CLI](/docs/tools/cli/service-cli#avn-cli-service-create). + +- If you use `mydumper/myloader` for the + [initial data transfer](/docs/products/mysql/howto/migrate-from-external-mysql#initial-data-transfer), + make sure your service has sufficient computational power (multiple vCPUs) and high + memory capacity to avoid the resource exhaustion during migration. :::note -If you are migrating from MySQL in GCP, enable backups with +If you are migrating from MySQL in Google Cloud, enable backups with [PITR](https://cloud.google.com/sql/docs/mysql/backup-recovery/pitr) for -GTID to be set to `on` +GTID to be set to `on`. ::: -### Variables +## Collect source and destination details -You can use the following variables in the code samples provided: +| Variable | Description | +|------------------|--------------------------------------------------------------------------------------------------------| +| `SRC_HOSTNAME` | Hostname for source MySQL connection | +| `SRC_PORT` | Port for source MySQL connection | +| `SRC_USERNAME` | Username for source MySQL connection | +| `SRC_PASSWORD` | Password for source MySQL connection | +| `SRC_IGNORE_DBS` | Comma-separated list of databases to ignore in migration | +| `SRC_SSL` | SSL setting for source MySQL connection | +| `DEST_NAME` | Name of the destination Aiven for MySQL service | +| `DEST_PLAN` | Aiven plan for the destination Aiven for MySQL service (for example, `startup-4` or `business-32`) | - | Variable | Description | - |------------------|--------------------------------------------------------------------------------------------------------| - | `SRC_HOSTNAME` | Hostname for source MySQL connection | - | `SRC_PORT` | Port for source MySQL connection | - | `SRC_USERNAME` | Username for source MySQL connection | - | `SRC_PASSWORD` | Password for source MySQL connection | - | `SRC_IGNORE_DBS` | Comma-separated list of databases to ignore in migration | - | `SRC_SSL` | SSL setting for source MySQL connection | - | `DEST_NAME` | Name of the destination Aiven for MySQL service | - | `DEST_PLAN` | Aiven plan for the destination Aiven for MySQL service (for example, `startup-4`, `business-32`, etc) | - -## Perform the migration +## Migrate your database -1. Create a user in the source database with sufficient privileges for - the pre-flight checks, the `mysqldump`, and the ongoing replication - (you can substitute `%` in the below command with the IP address of - the Aiven for MySQL database, if already existing): +1. Create a user in the source database with sufficient privileges for the pre-flight + checks, the bulk copy (using `mysqldump` or `mydumper` in ), and the ongoing + replication. Replace `%` with the IP address of the Aiven for MySQL database, if already + existing. ```sql create user 'SRC_USERNAME'@'%' identified by 'SRC_PASSWORD'; @@ -72,15 +93,19 @@ You can use the following variables in the code samples provided: grant select, process, event on *.* to 'SRC_USERNAME'@'%' ``` -1. If you don't have an Aiven for MySQL database yet, create it via - [Aiven Console](/docs/products/mysql/get-started) or the dedicated - [Aiven CLI command](/docs/tools/cli/service-cli#avn-cli-service-create) +1. Set the migration details using the `avn service update` + [Aiven CLI command](/docs/tools/cli/service-cli#avn-cli-service-update). -1. Set the migration details via the `avn service update` - [Aiven CLI command](/docs/tools/cli/service-cli#avn-cli-service-update) substituting - the parameters accordingly: + - Use your preferred migration tool: - ```bash + - For `mysqldump`, include option `-c migration.dump_tool=mysqldump` in the command. + - For `mydumper`, include option `-c migration.dump_tool=mydumper` in the command. + + - Replace the + [placeholders](/docs/products/mysql/howto/migrate-from-external-mysql#collect-source-and-destination-details) + with meaningful values. + + ```bash {8} avn service update --project PROJECT_NAME \ -c migration.host=SRC_HOSTNAME \ -c migration.port=SRC_PORT \ @@ -88,46 +113,44 @@ You can use the following variables in the code samples provided: -c migration.password=SRC_PASSWORD \ -c migration.ignore_dbs=SRC_IGNORE_DBS \ -c migration.ssl=SRC_SSL \ + -c migration.dump_tool=mysqldump \ DEST_NAME ``` -1. Check the migration status via the dedicated - `avn service migration-status` +1. Check the migration status using the `avn service migration-status` [Aiven CLI command](/docs/tools/cli/service-cli#avn-cli-service-migration-status): ```bash avn service migration-status --project PROJECT_NAME DEST_SERVICE_NAME ``` -While the migration process is ongoing, the `migration_detail.status` -will be `syncing`: - -```json -{ - "migration": { - "error": null, - "method": "replication", - "seconds_behind_master": 0, - "source_active": true, - "status": "done" - }, - "migration_detail": [ - { - "dbname": "migration", - "error": null, - "method": "replication", - "status": "syncing" - } - ] -} -``` + When the migration process is ongoing, `migration_detail.status` is `syncing`: + + ```json + { + "migration": { + "error": null, + "method": "replication", + "seconds_behind_master": 0, + "source_active": true, + "status": "done" + }, + "migration_detail": [ + { + "dbname": "migration", + "error": null, + "method": "replication", + "status": "syncing" + } + ] + } + ``` -:::note -The migration will initially do a bulk-copy of your data, and -several minutes after that has finished it will use the built-in -replication feature of MySQL to commence ongoing data copying. You can -see MySQL's internal status by running `show replica status` on the -destination database. +Ongoing replication starts a few minutes after the initial data copy. + +:::tip +Monitor the ongoing replication status by running `show replica status` on the destination +database. ::: ## Stop the replication @@ -136,16 +159,12 @@ After confirming that the migration is complete, stop the ongoing replication by the configuration from the destination service via the `avn service update` [Aiven CLI command](/docs/tools/cli/service-cli#avn-cli-service-update): -```shell +```bash avn service update --project PROJECT_NAME --remove-option migration DEST_NAME ``` :::warning If you don't stop the ongoing replication, you might lose data. For example, if you remove -the data on the migration source, the data is also removed on the migration target as a -result of the active replication. +the data on the migration source when the replication is active, the data is also removed +on the migration target. ::: - - - -- [Migrate MySQL® databases to Aiven using the Console](/docs/products/mysql/howto/migrate-db-to-aiven-via-console) diff --git a/static/includes/mydumper-ea.md b/static/includes/mydumper-ea.md new file mode 100644 index 000000000..08b95589d --- /dev/null +++ b/static/includes/mydumper-ea.md @@ -0,0 +1,7 @@ +:::note[mydumper/myloader] +`mydumper/myloader` is an +[early availability feature](/docs/platform/concepts/service-and-feature-releases) +designed for large database migrations. It offers faster performance and reduced downtime +compared to `mysqldump`, which can consume significant resources and time when processing +large datasets. +:::