すべてのプロダクト
Search
ドキュメントセンター

PolarDB:データベースとテーブルの復元方法1: バックアップセットからデータを復元する

最終更新日:Sep 30, 2024

データベースとテーブルの復元は、クラスター内の指定されたデータベースまたはテーブルのみを復元するプロセスです。 たとえば、あなたはゲーム会社のデータベース管理者です。 データベースとテーブルの復元機能を使用して、プレーヤーまたはプレーヤーのグループのデータを復元できます。 バックアップセットから復元するか、以前の時点に復元するかの2つの方法を使用して、データベースとテーブルを復元できます。 このトピックでは、指定したデータベースまたはテーブルをバックアップセットから復元する方法について説明します。

概要

PolarDBのデータベースとテーブルの復元機能は、クラスター内の既存のデータベースまたはテーブルを上書きまたは削除したり、クラスター内の既存のデータベースまたはテーブルにデータを直接書き込んだりしません。 この機能により、クラスターに新しいデータベースまたはテーブルが作成されます。 復元プロセス中に新しいデータベース名またはテーブル名を指定して、新しいデータベースまたはテーブルにデータを復元できます。 たとえば、バックアップデータをdb1からdb2に復元するターゲットデータベースとしてdb2を指定できます。

データベースとテーブルの復元は、クラスターへのアクセスを中断しませんが、クラスターのコンピューティングリソースを消費する可能性があり、クラスターのCPU使用率とIOPSが増加します。

注意事項

サポートされているバージョン

説明

クラスターのデータベースエンジンバージョンを確認する方法については、「エンジンバージョンの照会」をご参照ください。

  • Database EditionEnterprise EditionEditioncluster EditionであるPolarDB for MySQLクラスターは、次のいずれかのデータベースエンジンバージョンを実行する場合、データベースとテーブルの復元機能をサポートします。

    • リビジョンバージョンが5.6.1.0.25以降のPolarDB for MySQL 5.6。

    • リビジョンバージョンが5.7.1.0.8以降のPolarDB for MySQL 5.7。

    • リビジョンバージョンが8.0.1.1.14以降のPolarDB for MySQL 8.0.1。

    • リビジョンバージョンが8.0.2.2.0以降のPolarDB for MySQL 8.0.2。

  • Database EditionEnterprise EditionであるGlobal Database Network (GDN) のプライマリクラスターは、次のいずれかのデータベースエンジンバージョンを実行している場合、データベースとテーブルの復元機能をサポートします。

    • リビジョンバージョンが5.6.1.0.42以降のPolarDB for MySQL 5.6。

    • リビジョンバージョンが5.7.1.0.30以降のPolarDB for MySQL 5.7。

    • リビジョンバージョンが8.0.1.1.44以降のPolarDB for MySQL 8.0.1。

    • リビジョンバージョンが8.0.2.2.25.3以降のPolarDB for MySQL 8.0.2。

  • Database EditionEnterprise Editionであるクラスターは、次のいずれかのデータベースエンジンバージョンを実行している場合、新しいデータベースおよびテーブル復元バージョンをサポートします。

    • リビジョンバージョンが5.6.1.0.42以降のPolarDB for MySQL 5.6。

    • リビジョンバージョンが5.7.1.0.30以降のPolarDB for MySQL 5.7。

    • リビジョンバージョンが8.0.1.1.44以降のPolarDB for MySQL 8.0.1。

    • リビジョンバージョンが8.0.2.2.25.3以降のPolarDB for MySQL 8.0.2。

    説明

    元のデータベースおよびテーブル復元バージョンと比較して、新しいデータベースおよびテーブル復元バージョンでは、元のクラスターにデータをより高速に復元できます。 詳細については、「全体的なプロセスと推定時間」をご参照ください。

制限事項

  • PolarDBのエディションがマルチマスタークラスター (データベース /テーブル) のクラスターは、データベースとテーブルの復元機能をサポートしていません。

  • データベースとテーブルの復元を使用して、グローバルセカンダリインデックスを持つテーブルを復元することはできません。

  • PolarDB for MySQLクラスターに読み取り専用ノードがなく、クラスター内のテーブルの数が50,000を超える場合、データベースとテーブルの復元機能を使用できません。

  • GDNのセカンダリクラスターでは、データベースとテーブルの復元を使用できません。

  • データベースとテーブルの復元を使用して、インメモリ列インデックス (IMCI) を復元することはできません。

  • データベースとテーブルの復元を使用して、コールドデータとしてアーカイブされたテーブルを復元することはできません。

  • InnoDBストレージエンジンを使用するテーブルを復元する場合にのみ、データベースとテーブルの復元を使用できます。

説明

データベースおよびテーブルの復元をサポートしていないクラスター上のデータベースまたはテーブルを復元するには、最初に次のいずれかの方法を使用して、新しいクラスターへのデータの完全復元を実行します。方法1の完全復元: バックアップセットからデータを復元および方法2の完全復元: 以前の時点にデータを復元します。 次に、新しいクラスターから元のクラスターにデータを移行します。 クラスター間でデータを移行する方法については、「PolarDB For MySQLクラスター間のデータ移行」をご参照ください。

使用上の注意

  • レベル1のバックアップセットからのみデータベースとテーブルを復元できます。

  • 指定したテーブルのみが復元されます。 復元するテーブルをすべて選択していることを確認します。

    説明

    復元するテーブルを特定できない場合は、現在のクラスター内のすべてのデータを新しいクラスターに復元してから、そのデータを現在のクラスターに移行することを推奨します。 詳細については、「完全復元の方法1: バックアップセットからデータを復元する」および「完全復元の方法2: 以前の時点にデータを復元する」をご参照ください。

  • 復元プロセス中にクラスターにすでに存在するデータベースまたはテーブル名を指定すると、タスクは失敗します。

  • データベースの一部のみを復元する場合は、データベース内の最大100のテーブルを同時に復元できます。 データベース全体を復元すると、データベース内のすべてのテーブルが復元されます。

    説明
  • データベースとテーブルの復元機能は、50,000を超えるテーブル (システムテーブルを含む) を含むクラスターで使用できます。

    説明
    • 機能はカナリアリリースにあります。 この機能を使用するには、お問い合わせください。

    • システムテーブルを含むクラスター内のテーブル数を照会するには、次のSQL文を実行します。

      SELECT COUNT(*) FROM information_schema.tables;
    • クラスター内のシステムテーブルの数を照会するには、次のSQL文を実行します。

      SELECT COUNT(*) FROM information_schema.tables WHERE table_schema IN ('sys', 'performance_schema', 'mysql', 'information_schema', '__recycle_bin__');
  • データベースとテーブルの復元機能を使用してテーブルを復元すると、テーブル内のトリガーは復元できません。

  • データベースとテーブルの復元機能を使用してテーブルを復元すると、テーブル内の外部キーは復元できません。

手順

  1. PolarDBコンソールにログインします。

  2. 左側のナビゲーションウィンドウで、クラスターをクリックします。

  3. 左上隅で、クラスターがデプロイされているリージョンを選択します。

  4. クラスターを見つけて、そのIDをクリックします。

  5. 左側のナビゲーションウィンドウで、設定と管理 > バックアップと復元 を選択します。

  6. バックアップと復元ページで、データベース / テーブルの復元をクリックします。

  7. 表示されるダイアログボックスで、復元タイプパラメーターをバックアップセットを選択し、バックアップセットのドロップダウンリストから使用するバックアップセットを選択します。

    1

  8. 復元するデータベースとテーブル セクションの左側で、復元するデータベースを選択します。 右側で、復元するテーブルを選択します。

    1

    説明
    • ターゲットデータベースまたはテーブルの名前を指定しない場合、元のデータベースとテーブルの名前に _backupを付けて、新しいデータベースまたはテーブル名が自動的に生成されます。 たとえば、元のテーブルの名前がtestの場合、ターゲットテーブルの名前は自動的にtest_backupになります。

    • データベースを選択した後にテーブルを選択しないと、データベース内のすべてのテーブルが復元されます。

  9. OKをクリックします。

関連する API 操作

API 操作

説明

DescribeMetaList

復元可能なデータベースまたはテーブルのメタデータを照会します。

RestoreTable

PolarDBクラスターのデータベースまたはテーブルを復元します。