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

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

最終更新日:Mar 19, 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 <パッケージの名前> .tar.gz -C <パッケージから取得したファイルを格納するディレクトリ>

    この例では、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スクリプトをコンピューターまたはECSインスタンスにダウンロードします。

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

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

    python3 restore_from_downloads.py <CSVファイルまたはSQLファイルのディレクトリ> <データベースホスト> <データベースポート> <アカウントのユーザー名> <アカウントのパスワード>

    例:

    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のバージョンを確認できます。

参考資料