コマンドラインに自信がない? RDS PostgreSQL データベースをダンプするその他の方法
Amazon RDS PostgreSQL データベースを pg_dump でダンプする方法
前提条件
- Amazon Web Services (AWS) アカウントを持っていること
- RDS for PostgreSQL インスタンスが作成されていること
pg_dump
コマンドがインストールされていること
手順
RDS インスタンスに接続する
以下のコマンドを使用して、RDS インスタンスに接続します。
psql -h <RDSインスタンスのエンドポイント> -d <データベース名> -U <ユーザー名>
上記のコマンドで、
<RDSインスタンスのエンドポイント>
,<データベース名>
,<ユーザー名>
をそれぞれご自身の環境に合わせて置き換えてください。ダンプファイルを保存する
RDS インスタンスから S3 に直接ダンプする方法
RDS インスタンスから S3 に直接ダンプするには、以下のコマンドを使用できます。
pg_dump -U <ユーザー名> -d <データベース名> | gzip -c | aws s3 cp - s3://<バケット名>/<ダンプファイル名>.sql.gz
上記のコマンドで、<ユーザー名>
, <データベース名>
, <バケット名>
, <ダンプファイル名>
をそれぞれご自身の環境に合わせて置き換えてください。
注意事項
- ダンプを実行する前に、データベースをバックアップすることをお勧めします。
- 大規模なデータベースをダンプする場合は、時間がかかる場合があります。
- ダンプファイルは、プレーンテキスト形式で保存されるため、機密情報が含まれている場合は注意が必要です。
pg_dump -U postgres -d mydatabase > mydatabase.sql
このコマンドは、mydatabase
という名前のデータベースのすべてのテーブルを mydbase.sql
という名前のダンプファイルにダンプします。
pg_dump -U postgres -d mydatabase -t customers orders > mydatabase_tables.sql
このコマンドは、mydatabase
という名前のデータベースの customers
と orders
という名前のテーブルを mydbase_tables.sql
という名前のダンプファイルにダンプします。
例 3: スキーマのみをダンプする
pg_dump -U postgres -d mydatabase --schema-only > mydatabase_schema.sql
例 4: カスタムフォーマットでダンプする
pg_dump -U postgres -d mydatabase --format=custom > mydatabase_custom.sql
pg_dump -U postgres -d mydatabase | gzip -c | aws s3 cp - s3://my-bucket/mydbase.sql.gz
Amazon RDS 管理コンソールを使用して、データベースのスナップショットを作成し、そのスナップショットからデータベースを復元することができます。この方法は、データの損失を防ぐために定期的なバックアップを作成するのに適しています。
手順:
- RDS 管理コンソールにサインインします。
- 左側のメニューから データベース を選択します。
- ダンプしたいデータベースを選択します。
- スナップショット タブをクリックします。
- スナップショットの名前と説明を入力します。
- 作成 をクリックします。
スナップショットが作成されたら、復元 タブをクリックして、スナップショットからデータベースを復元することができます。
AWS Database Migration Service (DMS)
AWS DMS は、データベースをクラウド間またはオンプレミス間で移行するためのサービスです。DMS を使用して、RDS PostgreSQL データベースを別のデータベースエンジンに移行したり、別の RDS インスタンスに複製したりすることができます。
- ソースデータベース として RDS PostgreSQL を選択します。
- ターゲットデータベース として RDS PostgreSQL または別のデータベースエンジンを選択します。
- 移行設定を指定します。
DMS は、データベースの移行を自動的に実行します。
pgAdmin
pgAdmin は、PostgreSQL データベースを管理するためのオープンソースのツールです。pgAdmin を使用して、RDS PostgreSQL データベースをダンプしたり、復元したりすることができます。
- pgAdmin をインストールします。
- pgAdmin で RDS インスタンスに接続します。
- ダンプ を選択します。
- ダンプファイルの名前と場所を指定します。
エクスポート/インポートウィザード
PostgreSQL には、エクスポート/インポートウィザードというグラフィカルツールが付属しています。このツールを使用して、RDS PostgreSQL データベースをダンプしたり、復元したりすることができます。
- RDS インスタンスに接続している PostgreSQL クライアントを開きます。
- ファイル > エクスポート/インポート を選択します。
- エクスポート タブを選択します。
- ファイル形式 として カスタム を選択します。
- エクスポートするデータのオプションを選択します。
- ファイル フィールドで、ダンプファイルの名前と場所を指定します。
ダンプファイルが作成されたら、インポート タブを使用して、データベースを復元することができます。
- 上記に記載されている方法は、それぞれ長所と短所があります。ご自身のニーズに合った方法を選択してください。
- データベースをダンプする前に、必ずデータベースをバックアップしてください。
database postgresql amazon-web-services