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

ApsaraDB RDS:CSVファイルまたはSQLファイルを使用して、ApsaraDB RDS for PostgreSQLインスタンスのデータを自己管理型PostgreSQLインスタンスに復元する

最終更新日:Dec 12, 2024

ApsaraDB RDS for PostgreSQLのバックアップダウンロード機能を使用して、クラウドディスクをCSVファイルまたはSQLファイルとして使用するApsaraDB RDS for PostgreSQLインスタンスのスナップショットバックアップファイルをエクスポートできます。 次に、CSVファイルまたはSQLファイルを使用して、RDSインスタンスのデータを自己管理型PostgreSQLインスタンスに復元できます。

手順

このセクションでは、SQLファイルを使用して、クラウドディスクを使用するRDSインスタンスのデータを、64ビットCentOS 7.8を実行するElastic Compute Service (ECS) インスタンス上の自己管理型PostgreSQLインスタンスに復元する方法について説明します。 他のオペレーティングシステムを使用する場合は、対応するコマンドを使用する必要があります。 それ以外の場合は、エラーが返されます。

  1. ApsaraDB RDSコンソールにログインし、クラウドディスクを使用するRDSインスタンスのバックアップファイルをCSVファイルまたはSQLファイルに変換してから、コンピューターまたはECSインスタンスにダウンロードします。 詳細については、「バックアップファイルのダウンロード」をご参照ください。

  2. 次のコマンドを実行して、ダウンロードしたパッケージを解凍します。

    tar -zxvf <Name of the package>.tar.gz -C <Directory to store the files that are obtained from the package>

    この例では、backup.tar.gzという名前のパッケージが /home/ecs-test-userディレクトリに解凍されます。 パッケージ名とディレクトリ名を実際の名前に置き換えることができます。

    tar -zxvf backup.tar.gz -C /home/ecs-test-user
  3. オプションです。 バックアップファイルが /home/ecs-test-userディレクトリに解凍されているかどうかを確認します。

    ls -al /home/ecs-test-user
  4. PostgreSQL Pythonスクリプト.pyをコンピューターまたはECSインスタンスにダウンロードします。

  5. 次のコマンドを実行して、restore_from_downloads.pyファイルに必要な権限を付与します。

    chmod +x ./restore_from_downloads.py
  6. 次のコマンドを実行して、CSVファイルまたはSQLファイルを使用してRDSインスタンスのデータを自己管理型PostgreSQLインスタンスに復元します。

    python3 restore_from_downloads.py <Directory of the CSV file or SQL file> <Database host> <Database port> <Username of the account> <Password of the account>

    python3 restore_from_downloads.py /home/ecs-test-user 127.0.0.1 5432 postgres "#Tes********"
    重要
    • 自己管理型PostgreSQLインスタンスに、データをインポートするデータベースと同じ名前のデータベースが含まれている場合、インポートは失敗します。

    • 使用するアカウントのユーザー名またはパスワードに、数字記号 (#) やスペースなどの特殊文字が含まれている場合は、ユーザー名またはパスワードを二重引用符 ("") で囲む必要があります。 たとえば、パスワードが #1234の場合、上記のコマンドで "#1234" と入力する必要があります。

    • Python 3.xがインストールされていない場合、データの復元中にエラーが発生する可能性があります。 python3 -- versionコマンドを実行して、Pythonのバージョンを確認できます。

関連ドキュメント