Cloud SQL のデータ移行について

このページでは、Cloud SQL のデータ移行オプションについて説明します。

Database Migration Service

外部サーバーから Cloud SQL にデータを移行するには、Database Migration Service を使用します。

Database Migration Service を使用する場合は、移行ジョブの作成時に移行先の Cloud SQL インスタンスを作成できます。Database Migration Service は、移行ジョブを使用して、移行元のデータベース インスタンスから移行先の Cloud SQL インスタンスにデータを移行します。詳細については、新しい移行先インスタンスへの移行ジョブを作成するをご覧ください。

ただし、Database Migration Service の外部で移行先の Cloud SQL インスタンスの作成が必要になることがあります。たとえば、Terraform やその他の Infrastructure as code(IaC)ツールを使用できます。その場合、Cloud SQL インスタンスを作成した後で、引き続き Database Migration Service を使用してデータを移行できます。詳細については、既存の移行先インスタンスへの移行ジョブを作成するをご覧ください。

外部サーバーからのレプリケーション

外部サーバーから Cloud SQL にデータを移行するもう 1 つの方法として、レプリケーションを使用できます。Cloud SQL は、インスタンスにデータを移行するためのさまざまなレプリケーション モードをサポートしています。

詳細については、外部サーバーからのレプリケーションについてをご覧ください。

レプリケーションを使用してデータ移行用に Cloud SQL を設定するには、レプリケーション用に Cloud SQL と外部サーバーを構成するをご覧ください。

Cloud SQL for MySQL は、Percona XtraBackup 物理ファイルから外部 MySQL データベースの移行もサポートしています。論理ダンプファイルの代わりに物理ファイルを使用してレプリケーションを設定すると、外部 MySQL データベースを Cloud SQL for MySQL インスタンスに移行する速度が、並列移行で論理ダンプファイルを使用する場合の最大 3 倍、シングル スレッド移行で論理ダンプファイルを使用する場合の最大 10 倍になります。

詳細については、XtraBackup 物理ファイルから Cloud SQL に移行するをご覧ください。

制限事項

  • Private Service Connect が有効になっている Cloud SQL インスタンス、またはデータがすでに含まれている Cloud SQL インスタンスへのデータの移行はサポートされていません。リードレプリカがあるインスタンスにデータを移行するには、移行元インスタンスの GTID_MODEON に設定する必要があります。
  • インスタンスのバックアップ設定がカスタマイズされている場合(カスタム バックアップ ロケーションなど)は、インスタンスをプロモートした後、バックアップ設定を再度カスタマイズすることをおすすめします。プロモーション プロセス中に、Cloud SQL はバックアップ設定をデフォルト値にリセットします。