【AWS】RDSにPostgreSQLを導入する方法

最終更新日:2026年8月12日

この記事でわかること

はじめに

項目 AWS Microsoft Azure Google Cloud
世界シェア 約33%(首位) 約22% 約11%
強み サービス数・実績 Microsoft製品連携 データ分析・AI
無料枠 12ヶ月+常時無料 12ヶ月無料 常時無料枠あり
主な資格 CLF / SAA / SAP AZ-900 / AZ-104 ACE / PCA

記事をご覧いただき、ありがとうございます。皆さんはAWS(Amazon Web Service)のサービスの1つであるRDS(Amazon Relational Database)をご存知でしょうか?このサービスはクラウド上にフルマネージドなリレーショナル型データベースサーバーを構築できるサービスのことです。また、対応するRDBMS(Relational Database Management System)は、「MySQL」、「SQL Server」、「Oracle」、「MariaDB」、「Amazon Aurora」、「PostgreSQL」の6つになりますが、本記事ではこの内の1つである「PostgreSQL」とRDSの特徴について、解説していきます。

フルマネージドサービスとは

このフルマネージドなサービスとは、データベースを利用する際に必要となる環境構築や運用管理を全てAWS側が行ってくれるサービスのことです。従来のオンプレミスの場合、社内に物理的なサーバーを購入・設置し、環境構築までの作業を自分たちで行う必要がありましたが、このクラウドサービスによりその必要がなくなり、利用者はサーバーを使用することだけに注力すれば良いので非常に楽です。

RDSによるデータベース環境構築

オンプレミスでデータベースサーバーの環境構築をする場合、サーバーやストレージなどの機器を購入、OSのインストールやソフトウェアインストール、各種設定を行った後、データベースが使える状態になります。しかし、このAWSのRDSの場合は、「RDSインスタンス」というものを作成するだけでデータベースが使用可能な状態になります。そのため、オンプレミスのように機器を購入するための初期費用の削減だけでなく、環境構築による時間も短縮可能なため利用する側の負担を大きく減らすことができるようになります。これが、オンプレミスとRDSの大きな違いの1つです。

RDSによるデータベース運用

オンプレミスの場合、可用性やバックアップの仕組みなどを構築しなければなりませんが、RDSの場合、「マルチAZ」という仕組みを構築できます。そのためマスタで障害が発生した場合は、自動でスレーブに切り替わるようになっています。また、「自動スナップショット」という機能があるため毎日のバックアップも自動で行われます。それに加え、アップデートファイルの適用なども自動で行われるので便利です。このように、全ての運用を自動で行ってくれるため、作業時間の短縮や作業ミスを減らすことができるようになっています。

RDS PostgreSQLの特徴

ここからは、RDS PostgreSQLについて解説していきます。

■メリット

・DBインスタンスのスペック変更が容易

DBインスタンスのCPU性能やメモリ容量、ディスク性能などをAWSのマネジメントコンソールから簡単に行なえるので柔軟性があります。また利用目的に応じてDBインスタンスのスペックを上下させることができるようになっているため汎用性が高いです。しかし、ディスク容量だけは増やすことはできても、減らすことはできないので注意が必要です。

・高速ストレージ

AWS RDSではPostgreSQL向けに2種類のSSDストレージが用意されていて、1つ目は「汎用SSD」、2つ目は「プロビジョンド IOPS」の2種類です。前者は小規模または中規模向けのワークロードで使用できるSSD、後者は高いパフォーマンスが必要とされる本稼働アプリケーションでの使用が推奨されるSSDです。

・自動バックアップ

AWS RDSの自動バックアップ機能をオンにしている場合、データベースとトランザクションログを最大35日間保存でき、これを使用しPostgreSQLのDBインスタンスを復旧することができます。また、DBスナップショット機能により完全なデータベースバックアップを自動で作成し、このDBスナップショットからでもPostgreSQLを復旧させることができるようになっています。

・高可用性

AWS RDSには「マルチAZ」という機能があり、異なるアベイラビリティゾーン(各リージョンに存在するデータセンター)に予備のレプリカ(サーバーをレプリケーションしたもの)を配置し、障害発生時に切り替えて運用を継続する仕組みなので高い可用性があります。また、「リードレプリカ」という機能があり、データの書き込みをマスタが行い、読み込みを複製した複数のレプリカが行うためマスタサーバーに掛かる負荷を分散させることができます。

■デメリット

PostgreSQLの拡張制限

オンプレミスでは使えていた、PostgreSQLの拡張機能の一部がAWS RDSでは使えないようになっています。他には、PostgreSQLの同期レプリケーションが使えなかったり、DBスナップショットを使用して復旧する際には直前ではなく、5分前までの復旧しかできない点がデメリットとして挙げられます。

RDS PostgreSQLデータベース作成・接続手順

ここからは、実際にPostgreSQL DBインスタンスを作成手順を解説していきます。なお、AWSマネジメントコンソールの画面構成や項目名は随時変更されるため、実際の操作画面と多少異なる場合があります。

①RDSコンソール起動

AWS マネジメントコンソールのサービスから「RDS」をクリックし、RDSのページを表示します。

②PostgreSQL DBインスタンス作成

RDSのページで「データベースの作成」をクリックします。
RDMSのエンジンを選択画面になるので、ここでPostgreSQLを選択し、「RDS 無料利用枠の対象オプションのみを有効化」にチェックを入れ、「次へ」をクリックします。

③DBインスタンス設定

「DBインスタンス識別子」、「マスターユーザー名」、「マスターパスワード」を入力し、「次へ」をクリックします。

④DBインスタンス詳細設定

パブリックアクセス可能性の「YES」を選択します。
データベースの名前を入力します。
バックアップの保存期間を「1日」を選択します。
パフォーマンス監視「無効」を選択します。
削除保護を「無効」にします。

これらの設定が完了したら、「データベースの作成」をクリックすると、DBインスタンスが作成されます。また、DBインスタンスの状態が「作成中」から「利用可能」になると接続することができるようになります。

⑤PostgreSQL接続

SQLクライアントを使用してRDS DBインスタンスに接続していくので、今回は「SQL Workbench」を使用して接続します。
SQL Workbenchを起動したら、Driverで「PostgreSQL」を選択します。
URLの箇所に、PostgreSQL DBインスタンスのエンドポイントとポート番号を入力します。
ユーザー名・パスワードはPostgreSQL DBインスタンス作成時に入力した内容を入力し、OKをクリックすると接続されるので、接続状態はAWSのRDS画面から確認できます。

利用料金について

【要注意】料金・無料利用枠に関する記載について
以下に記載の料金(USD建ての単価等)は執筆時点の目安であり、AWSの料金は改定されることがあります。最新の料金はAWS公式サイトでご確認ください。また、AWSの無料利用枠は2024年7月以降、新規アカウントでは一定額のクレジットが付与される方式に変更されています。無料利用枠の最新の条件についても、AWS公式サイトでご確認ください。

Amazon RDS 自体は無料です。実際に使用した分のみ、料金が発生します。最低料金設定はありません。
Amazon RDS への支払いには、オンデマンドインスタンスかリザーブドインスタンスのどちらかです。AWS 料金計算ツールを使って、月間の請求額を見積りすることが出来ます。Amazon RDS では、リレーショナルデータベースのさまざまなユースケースに合わせて、最適化されたインスタンスタイプを選択できます。

オンデマンド DB インスタンス

オンデマンド DB インスタンスでは、長期間の契約なしに、時間単位で、計算処理能力に対して料金が発生します。これにより、ハードウェアのプランニング、購入、維持に伴うコストや手間が省け、高額な固定費となりがちな運用コストも、より安価な変動費に抑えることができます。
シングル AZ 配置およびマルチ AZ 配置の料金は共に、DB インスタンスの作成から終了あるいは削除までの DB インスタンス時間単位で計算されます。 DB インスタンスクラスの作成、起動、変更などの請求対象となるステータス変更に続いて、1 時間未満の DB インスタンス時間は 10 分を最小料金として、秒単位で請求されます。
Amazon RDS の T3 DB インスタンスの場合は Unlimited モードで実行されるので、連続する 24 時間での平均 CPU 使用率がインスタンスのベースラインを超えた場合に追加料金が発生します。CPU クレジットの単価は vCPU 時間あたりで課金されます(具体的な単価はAWS公式サイトでご確認ください)。CPU クレジット料金は、すべての T3 インスタンスサイズおよびすべてのリージョンで同じです。リザーブドインスタンスでは対象外です。

リザーブドインスタンス

Amazon RDS リザーブドインスタンスでは、1 年契約または 3 年契約で DB インスタンスを予約でき、DB インスタンスのオンデマンドインスタンス料金に比べて、大幅な割引を受けられます。Amazon RDS の RI 料金のお支払い方法には「前払いなし」、「一部前払い」、「全額前払い」の 3 種類があり、前払いする金額と実効時間単価とのバランスを取ることができます。
Amazon RDS リザーブドインスタンスでは、PostgreSQL データベースエンジンのサイズを柔軟に変更できます。サイズを柔軟に変更できるため、同一インスタンスファミリー (M5、T3、R5 など) 内では、どのようなサイズを使用しても、ご利用の RI の割引料金が自動的に適用されます。
リザーブドインスタンスの料金には、ストレージや I/O の料金は含まれていないことにご留意ください。Purchasing API を呼び出すか、AWS コンソールでリザーブドインスタンスオプションを選択することで、データベースインスタンスをリザーブドインスタンスとして指定できます。
データベースインスタンスをリザーブドインスタンスとして指定する場合、該当するリザーブドインスタンスのリージョン、インスタンスタイプ、および数量を指定する必要があります。リザーブドインスタンスは指定したリージョンでのみ使用できます。リザーブドインスタンスの料金プログラムは、いつでも終了できます。
リザーブドインスタンスの料金の対象であることに加えて、AWSのサービスの使用について規定する AWS カスタマー契約やその他の契約に基づき、データ転送やその他の料金もリザーブドインスタンスの対象となります。

データベースストレージ

汎用 (SSD) ストレージ

Amazon RDS では、プライマリデータセットに関連付ける汎用 (SSD) ストレージ容量を 20 GiB~64 TiB の範囲で選択できます。汎用 (SSD) では、プロビジョニングするストレージに対して課金されます。ただし、使用する I/O に対しては課金されません。

プロビジョンド IOPS (SSD) ストレージ

Amazon RDS では、各 DB インスタンスクラスについて、お客様のデータベースに必要な I/O 能力を指定またはプロビジョニングできます。PostgreSQL DB エンジンでは、一定範囲内でIOPSおよびストレージをプロビジョニングおよびスケールできます(具体的な上限値はAWS公式サイトでご確認ください)。実際の最大 IOPS はデータベースワークロードによって異なります。プロビジョンド IOPS (SSD) ストレージの場合は、プロビジョニングしたスループットとストレージに対して課金されます。ただし、使用する I/O に対しては課金されません。

マグネティックストレージ

Amazon RDS では、プライマリデータセットのためのマグネティックストレージ容量を、20 GiB~3 TiB の範囲内で選択できます。マグネティックストレージは、下位互換性のためにサポートされています。新しいストレージのニーズには、汎用 SSD またはプロビジョンド IOPS SSD を使用することをお勧めします。

バックアップストレージ

バックアップストレージは、自動化されたデータベースバックアップや、リージョン内で作成した DB スナップショットに関連付けられたストレージです。バックアップ保持期間を延長したり、DB スナップショットを作成したりすると、アカウントによって使用されるバックアップストレージは増加します。
バックアップストレージはリージョンごとに割り当てられます。バックアップストレージの合計容量は、そのリージョンのバックアップすべてに対するストレージの合計と等しくなります。
DB スナップショットを別のリージョンに移動すると、移動先リージョンのバックアップストレージが増加します。
該当するリージョンのデータベースストレージ容量が 100% を超えるまで、バックアップストレージに対する追加料金は発生しません。
例えば、毎月、500 GiB のデータベースストレージがプロビジョンされる PostgreSQL インスタンスと、毎月、200 GiB のデータベースストレージがプロビジョンされる MySQL DB インスタンスがある場合、毎月、最大 700 GiB のバックアップストレージが無料で提供されます。
マルチ AZ とシングル AZ の設定は、バックアップストレージでは同様に扱われます。
DB インスタンス終了後の追加のバックアップストレージの料金については、AWS公式サイトの最新の料金表をご確認ください。

Snapshot Export

Amazon Relational Database Service (RDS) の Snapshot Export は、RDS または Aurora スナップショット内のデータを Amazon S3 に Parquet 形式で自動エクスポートする機能です。Parquet 形式はテキスト形式と比較すると、アンロードが最大 2 倍速く、さらにストレージ使用量が Amazon S3 で最大 6 倍少なくすみます。
エクスポートされたデータは、Amazon Athena、Amazon EMR、Amazon SageMaker AI などの AWS のサービスを使用して分析できます。
たとえば、100 GB のスナップショットをお持ちで、このスナップショットから 10 GB のテーブルをフィルタリングで選択して、Amazon S3 にエクスポートするとします。このデータのエクスポート料金はスナップショットサイズに応じて発生します(具体的な単価はAWS公式サイトでご確認ください)。それ以降、同じスナップショットからデータをエクスポートしても料金が毎回加算されることはありません。
AWS Key Management Service によるデータの暗号化または復号には別途料金がかかります。
エクスポートされたデータを Amazon S3 に保存したり、お使いの S3 バケットに対して PUT リクエストを実行したりする際にも、別途料金がかかります。

データ転送

Amazon RDS と Amazon EC2 のインスタンス間のデータ転送は、同一アベイラビリティーゾーン内であれば無料です。
マルチ AZ 配置のレプリケーションを目的とするアベイラビリティーゾーン間のデータ転送は無料です。
Amazon RDS DB インスタンスが VPC の外部にある場合: Amazon EC2 インスタンスと Amazon RDS DB インスタンスの間でデータ転送を行うときに、これらのインスタンスが同一リージョン内のそれぞれ異なるアベイラビリティーゾーン内にある場合は、Amazon RDS DB インスタンスが送受信するトラフィックについてはデータ転送料金は発生しません。
データ転送料金が発生するのは Amazon EC2 インスタンスが送受信するトラフィックに対してのみであり、標準の Amazon EC2 リージョンデータ転送料金が適用されます(具体的な単価はAWS公式サイトでご確認ください)。
Amazon RDS DB インスタンスが VPC の内部にある場合 : Amazon EC2 インスタンスと Amazon RDS DB インスタンスの間でデータ転送を行うときに、これらのインスタンスが同一リージョン内のそれぞれ異なるアベイラビリティーゾーン内にある場合は、Amazon EC2 リージョンデータ転送料金が送信と受信の両方で発生します。
DB スナップショットコピーでは、スナップショットデータをコピーするためにリージョン間で転送されたデータに対して料金が発生します。スナップショットがコピーされた後は、コピー先のリージョンで保存するため、標準のデータベーススナップショット料金が発生します。
AWSの無料利用枠は2024年7月以降、新規アカウントでは一定額のクレジットが付与される方式に変更されています。データ転送を含む無料利用枠の最新の条件は、AWS公式サイトでご確認ください。

押さえておきたいポイント

  • RDSはフルマネージドサービスのため、環境構築・OSやミドルウェアのパッチ適用・バックアップといった運用作業の多くをAWS側に任せられ、運用負荷を大きく削減できる。
  • 「マルチAZ」による自動フェイルオーバーや「リードレプリカ」による負荷分散で高可用性を実現できる一方、PostgreSQLの拡張機能の一部や同期レプリケーションが使えないなど、オンプレミスにはない制約もある。
  • 料金はオンデマンド/リザーブドの選択、ストレージ種別、データ転送量など複数の要素で構成される。具体的な単価や無料利用枠の条件は変更されることがあるため、導入検討時は必ずAWS公式サイトの最新情報を確認する。

よくある質問

Q. RDSのPostgreSQLと自分でサーバーを構築するPostgreSQLとの違いは何ですか?

最も大きな違いは運用管理の主体です。自前構築の場合はOSのセットアップ、PostgreSQLのインストール、バックアップ設計、パッチ適用などをすべて自分たちで行う必要がありますが、RDSではこれらの多くをAWS側が自動化してくれます。その分、PostgreSQLの一部拡張機能の利用や細かなサーバー設定変更には制限がある点が異なります。

Q. RDS PostgreSQLは無料利用枠だけで運用できますか?

無料利用枠は学習や検証用途を想定した限定的な範囲のものであり、本番運用でアクセスが増えたりストレージ・稼働時間が増えたりすると課金対象になります。また無料利用枠の対象条件やアカウント作成後の付与方式は変更されることがあるため、最新の内容はAWS公式サイトでご確認ください。

Q. RDS PostgreSQLからAmazon Auroraへの移行はできますか?

可能です。AuroraはPostgreSQL互換のエンジンを提供しており、DBスナップショットからのAurora移行など複数の移行方法が用意されています。より高いスループットや可用性が必要になった場合の移行先として検討されることが多いサービスです。

まとめ

AWS RDSでPostgreSQLを使用した場合のメリット・デメリットやPostgreSQL DBインスタンスの作成から接続方法、利用料金まで解説してきましたが、いかがだったでしょうか?クラウドサービスのRDSは長期間利用した場合、やや費用が高いです。しかし、初期費用が掛からず、運用も楽になる上に、災害にも強い点を考慮すると導入するメリットの方が大きいのではないでしょうか。興味のある方は、AWSの無料枠を利用して是非一度触れてみてください!最後までご覧いただき、ありがとうございます。

▼ アクロビジョンについて

👔

一緒に働きましょう

一人ひとりのキャリアに向き合い、
活躍できる現場をご紹介します。

採用サイトを見る →
💻

システム開発のご依頼・ご相談

コンサルティングから運用保守まで、
ワンストップで対応します。

まずはお気軽にご相談ください →