PostgreSQL サーバーを作成する

Visual Studio Code用 PostgreSQL 拡張機能を使用すると、エディターを離れることなく新しい PostgreSQL サーバーを作成できます。 開発とテスト用のローカル Docker コンテナーを起動したり、運用環境のワークロード用にフル マネージドの Azure Database for PostgreSQL フレキシブル サーバーをプロビジョニングしたり、大規模なシナリオ用に Azure HorizonDB (プレビュー) クラスターを作成したりできます。

前提条件

  • 拡張機能がインストールされているVisual Studio Code。
  • ローカル Docker サーバーの場合:Docker Desktop がインストールされ、Docker デーモンが実行されています。 ターミナルで docker info を実行して確認します。
  • Azure サーバーの場合: アクティブなサブスクリプションを持つAzure アカウント。 お持ちでない場合は、無料のアカウントを作成してください
  • Azure HorizonDB (プレビュー) クラスターの場合: アクティブなサブスクリプションを持ち、Azure HorizonDB (プレビュー) にアクセスできるAzure アカウント。

新しいサーバーの作成ハブを開く

  1. PostgreSQL アクティビティ バー コンテナーで、接続ツリーを見つけます。

  2. 接続ツリーの上部にある [新しいサーバーの作成] ボタンを選択するか、コマンド パレットからpgsql.createNewServer実行します。

    [ 接続 ] ツリーでサーバー グループを右クリックし、[ 新しいサーバーの作成] を選択することもできます。

[新しい PostgreSQL サーバーの作成] ハブが新しいエディター タブで開きます。次の 3 つのオプションが表示されます。

Option 説明
ローカル Docker PostgreSQL サーバーを作成する ローカル Docker コンテナーに PostgreSQL サーバーを作成します。 開発、テスト、学習に最適です。
Azure Database for PostgreSQL フレキシブル サーバー インスタンスを作成する Azureでフル マネージド PostgreSQL サーバーをプロビジョニングします。 運用環境のワークロードとチーム環境に適しています。
Azure HorizonDB インスタンスを作成する (プレビュー) Azureでクラウドネイティブで拡張性の高い PostgreSQL クラスターをプロビジョニングします。

シナリオに一致するカードを選択します。

Docker を使用してローカル サーバーを作成する

Docker コンテナーを使用すると、マシン上で実行される軽量で分離された PostgreSQL インスタンスが提供されます。 このオプションは、ローカル開発、プロトタイプ作成、または破棄可能なデータベース環境が必要な場合に使用します。

手順 1: 概要を確認する

[ ローカル Docker PostgreSQL サーバーの作成 ] カードを選択すると、拡張機能には、 Docker 上のシームレス PostgreSQL サーバーというタイトルのランディング ページが VS Code で表示されます。 このページでは、主な機能が強調表示されています。

  • One-Click サーバーの作成: 手動セットアップなしで PostgreSQL サーバーを数秒で起動します。
  • 完全に自動化されたセットアップ: 拡張機能は、分離された環境で PostgreSQL をプル、構成、および実行します。
  • シンプルな管理: PostgreSQL コンテナーをいつでも開始、停止、または削除できます。

[ 作業の開始] を 選択して続行します。

手順 2: 前提条件チェックに合格する

拡張機能は、Docker がインストールされ、実行されていることを確認します。 [ 前提条件の確認 ] 画面には、各チェックの状態が表示されます。

  • Docker がインストールされているかどうかを確認する: PATHで Docker CLI が使用可能であることを確認します。
  • Docker がバックグラウンドで実行されているかどうかを確認する: Docker デーモンがアクティブであることを確認します。

チェックが失敗した場合は、画面のリンクに従って Docker をインストールまたは起動し、このページに戻ります。 拡張機能はチェックを自動的に再実行します。

手順 3: 接続を構成する

前提条件に合格すると、[ 接続のセットアップ] フォームが表示されます。 以下のフィールドに記入してください。

Setting 必須 説明
接続名 いいえ 接続プロファイルのフレンドリ表示名。 既定のコンテナー名としても機能します (スペースはアンダースコアに置き換えられます)。
コンテナー名 Yes Docker コンテナーの名前。 使用できる文字: a-zA-Z0-9_.-
ユーザー名 Yes PostgreSQL インスタンスのスーパーユーザー名。 既定値は postgres です。
パスワード Yes スーパーユーザー アカウントのパスワード。
パスワードを保存する いいえ 選択すると、各接続でパスワードを入力する必要がないように、パスワードが格納されます。
データベース名 いいえ 初期データベースの名前。 既定値は postgres です。

[ 詳細オプション] を 選択して、追加の設定を展開します。

Setting 説明
バインドされたポート コンテナーの PostgreSQL ポートにマップされたホスト ポート (コンテナー ポート 5432)。 空白のままにすると、拡張機能によって、 54500-55000範囲内の空きポートが自動的に割り当てられます。 有効な範囲: 1-65535
イメージ バージョン プルする Docker イメージ タグ。 既定値は latest です。
イメージ レジストリ コンテナー レジストリの URL (たとえば、 myregistry.azurecr.io)。 既定値は Docker Hub です。
イメージ名 Dockerイメージ名。 既定値は postgres です。
イメージ プラットフォーム マルチアーキテクチャ環境 (たとえば、 linux/amd64) のプラットフォーム ターゲット。

手順 4: 作成して接続する

[ 作成] を選択してプロビジョニングを開始します。 拡張機能:

  1. postgres Docker イメージをプルします (まだキャッシュされていない場合)。
  2. 指定した設定でコンテナーを作成して起動します。
  3. PostgreSQL の準備が整うのを待機します ( pg_isreadyを使用)。
  4. 接続プロファイルを作成し、自動的に接続します。

コンテナーの初期化中に、" ローカル Docker サーバーの作成..." というタイトルの進行状況インジケーターが表示されます。 コンテナーの準備ができたら、[ 接続] ツリーにサーバーが表示され、すぐにクエリを開始できます。

Tip

Docker コンテナーは、Visual Studio Code再起動しても保持されます。 拡張機能の外部でコンテナーを停止、開始、削除、または検査するには、Docker CLI または Docker Desktop を使用します。

Azure Database for PostgreSQL フレキシブル サーバーを作成する

Azure Database for PostgreSQLフレキシブル サーバーは、高可用性、自動バックアップ、インテリジェントなパフォーマンス チューニングを提供するフル マネージド データベース サービスです。 この拡張機能では、Visual Studio Codeから直接新しいサーバーをプロビジョニングするためのマルチステップ ウィザードについて説明します。

手順 1: 概要を確認する

[Azure Database for PostgreSQL フレキシブル サーバー インスタンスの作成] カードを選択すると、ランディング ページにサービス機能が説明されます。

  • シームレスなAzure統合: Entra ID認証をサポートするVisual Studio Codeでサーバーを直接プロビジョニングします。
  • 柔軟なコンピューティングとストレージ: 構成済みのコンピューティング レベルとストレージ オプションから選択します。
  • 合理化されたサーバー管理: エディターを離れることなく、ライフサイクル、パフォーマンス、および構成を管理します。
  • 開発者向けに構築: Azureがインフラストラクチャを処理しながら、アプリケーションに集中します。

[ 作業の開始] を 選択して続行します。 必要に応じて、今後このページを表示しないようにするには 今後このページを表示しない を選択します。

手順 2: Azureにサインインする

拡張機能により、ログイン ページが開き、「Entra IDを使用してAzure アカウントにログインして、Azure Database for PostgreSQLフレキシブル サーバー インスタンスを作成します」というメッセージが表示されます。

  • Visual Studio CodeにサインインしているAzure アカウントが既にある場合、拡張機能はこれらの資格情報を自動的に使用します。
  • 複数のAzure アカウントまたはテナントがある場合は、アカウント スイッチャーとテナント セレクターを使用して正しい ID を選択します。

手順 3: サーバー設定を構成する

認証後、拡張機能はセクションごとに構成フォームを表示します。 選択を行うと、右側のコスト見積もりパネルが更新されます。

プロジェクトの詳細

Setting 説明
Subscription 課金とアクセスを管理するAzure サブスクリプションを選択します。 サインインしているアカウントとテナントのすべてのサブスクリプションが一覧表示されます。
リソース グループ 既存のリソース グループを選択するか、[ 新規作成 ] を選択して作成します。 新しいリソース グループは、サーバーと同じリージョンにデプロイされます。

基本

Setting 説明
[サーバー名] サーバーのグローバルに一意の名前。 拡張機能は、可用性を非同期的にチェックし、名前が取得された場合はエラーを表示します。 サーバー名は、接続ホスト名 (<server-name>.postgres.database.azure.com) の一部になります。
リージョン サーバーが展開されているAzureリージョン。 拡張機能は、選択したリージョンでサブスクリプションをプロビジョニングできることを検証します。
コンピューティングとストレージ 構成済みのコンピューティング層とストレージ層を選択します。 利用できるバンドルは次のとおりです。
Bundle vCores Storage SKU
開発/テスト (既定) 2 128 GB Standard_D2ds_v4
標準 4 256 GB Standard_D4ds_v4
パフォーマンス 512ギガバイト (GB) Standard_D8ds_v4

Tip

フォームの下部にある [Create in Azure portal]\(Azure portalで作成\) ボタンを使用して、コンピューティングとストレージをさらにカスタマイズできます。このボタンを使用すると、Azure portal作成エクスペリエンス全体が開きます。

Setting 説明
PostgreSQL のバージョン デプロイする PostgreSQL のメジャー バージョン。 使用可能なバージョン: 18、17、16、15、14。 既定値は 18 です。 利用可能なバージョンは、リージョンによって異なる場合があります。

Authentication

このフォームには 、ADMINISTRATOR ACCESS セクションが表示されます。 少なくとも 1 つの認証方法を有効にする必要があります。

Setting 説明
自分の Entra ID を使用する: <email> サインインしている Entra ID の ID をサーバー管理者として設定するチェック ボックス。 電子メールは、Azure ログインから自動的に設定されます。
PostgreSQL ユーザーとパスワードを作成する 従来の PostgreSQL 認証を有効にするチェック ボックス。 選択すると、3 つのフィールドが追加で表示されます。

[ PostgreSQL ユーザーとパスワードの作成] を選択した場合は、次の情報を入力します。

Setting 説明
管理者ユーザー名 PostgreSQL 管理者アカウントのログイン名 (たとえば、 pgadmin)。 文字で始まり、文字、数字、アンダースコアのみを含める必要があります。 adminrootguestpg_で始まる名前などの予約済み名を使用することはできません。
管理者パスワード 管理者アカウントのパスワード。 8 ~ 128 文字で、大文字、小文字、数字、および記号の少なくとも 3 つを含める必要があります。
管理者パスワードの確認 管理者パスワードを再入力します。

Note

両方の認証方法を同時に有効にすることができます。 たとえば、チーム メンバーのEntra IDや、アプリケーション接続文字列の PostgreSQL 認証などです。

コスト見積もり

フォームの右側にある [推定コスト ] パネルでは、毎月の価格が分類されます。

  • コンピューティング: 選択した SKU と仮想コアの数に基づきます。
  • ストレージ: 選択したストレージ層に基づきます。
  • バックアップ: バックアップ コストが含まれています。
  • 帯域幅: リージョン間の送信データ転送には追加料金が発生します。受信転送は無料です。

パネルには見積合計額が表示され、詳細な価格を確認するにはAzure 料金計算ツールへのリンクが表示されます。

手順 4: 使用条件に同意してデプロイする

フォームの下部:

  1. [ このサーバーを作成すると料金が発生する可能性があることを確認する ] チェック ボックスをオンにします。
  2. リンクされた 利用規約プライバシー ポリシーを確認します。
  3. [ 作成] を選択してプロビジョニングを開始します。

拡張機能は、デプロイの各ステージを追跡する進行状況ページに移動します。

Stage ステータス値
サーバー のプロビジョニング 保留中進行中完了失敗
ファイアウォール規則の割り当て 保留中進行中完了スキップ済み
Entra 管理者の割り当て 保留中進行中完了スキップ済み

デプロイの概要には、 選択したサーバー名サブスクリプションリソース グループリージョン構成 が表示されます。

デプロイ中も、Visual Studio Codeで作業を続けることができます。 進行状況ページを閉じると、デプロイもバックグラウンドで実行されます。

すべてのステージが完了すると、 ヘッダーが正常に作成 され、"Your PostgreSQL フレキシブル サーバーの準備ができました" というメッセージが表示されます。拡張機能によって、新しいサーバーの接続プロファイルが自動的に作成されます。 [ 完了] を 選択して進行状況ページを閉じます。

Note

ステージが警告で完了した場合、状態は 警告と共に完了と表示されます。 接続する前に詳細を確認します。

Azureデプロイを追跡する

PostgreSQL アクティビティ バーの [Azure デプロイ] ビューには、進行中と完了したすべてのAzureサーバーのデプロイが表示されます。 各エントリには、サーバー名、展開の状態、およびタイムスタンプが表示されます。

デプロイを右クリックして、次のアクションにアクセスします。

アクション 説明
Azure portalで開く Azure ポータルでサーバーのリソース ページを開きます。
デプロイの削除 トラッカーからデプロイ エントリを削除します。 このアクションでは、Azure リソースは削除されません。

ビュー ツール バーの [ Remove Completed]\(完了の削除 \) ボタンを使用して、完了したすべてのデプロイを一覧からクリアします。

Tip

Azure展開が失敗した場合は、進行状況ページで [再試行] を選択してプロビジョニングを再開するか、[フォームに戻る] を選択して設定を調整します。

Azure HorizonDB (プレビュー) クラスターを作成する

Azure HorizonDB (プレビュー) は、Azureのクラウドネイティブでスケーラブルな PostgreSQL クラスターです。 拡張機能では、新しいクラスターをプロビジョニングするためのマルチステップ ウィザードについて説明します。

Note

Azure HorizonDB (プレビュー) の可用性は、お使いの Azure サブスクリプションとリージョンによって異なります。

手順 1: 概要を確認する

[Azure HorizonDB インスタンスの作成] カードを選択すると、ランディング ページにサービス機能が記述されます。

  • Cloud-Native アーキテクチャ: 高スループット用に最適化されたクラウドネイティブ PostgreSQL クラスター。
  • エラスティック スケール: コンピューティングを 2 から 128 個の仮想コアにスケーリングします。
  • 組み込みの管理: Visual Studio Codeからライフサイクルと構成を管理します。
  • 開発者向け準備完了: Azureがインフラストラクチャを処理している間は、アプリケーションに集中します。

[ 作業の開始] を 選択して続行します。 必要に応じて、今後このページをスキップするには、今後表示しない を選択します。

手順 2: Azureにサインインする

拡張機能によってログイン ページが開きます。 Visual Studio CodeにサインインしているAzure アカウントが既にある場合、拡張機能はこれらの資格情報を自動的に使用します。 複数のAzure アカウントまたはテナントがある場合は、アカウント スイッチャーとテナント セレクターを使用して正しい ID を選択します。

手順 3: クラスター設定を構成する

認証後、拡張機能はセクションごとに構成フォームを表示します。

プロジェクトの詳細

Setting 説明
Subscription 課金とアクセスを管理するAzure サブスクリプションを選択します。
リソース グループ 既存のリソース グループを選択するか、[ 新規作成 ] を選択して作成します。

クラスターの詳細

Setting 説明
クラスター名 クラスターのグローバルに一意の名前。 拡張機能は可用性をチェックし、名前が取得された場合はエラーを表示します。
リージョン クラスターがデプロイされているAzureリージョン。
PostgreSQL のバージョン デプロイする PostgreSQL のメジャー バージョン。

コンピューティングの構成

仮想コア スライダーを使用して、クラスターのコンピューティング容量を選択します。 使用可能なオプションの範囲は 、2 から 128 個の仮想コアです。 メモリは 仮想コアあたり 8 GiB で自動的にスケーリングされます。

Authentication

Setting 説明
管理者ユーザー名 PostgreSQL 管理者アカウントのログイン名。
管理者パスワード 管理者アカウントのパスワード。
管理者パスワードの確認 管理者パスワードを再入力します。

AI 機能

AI 機能セクションでは、組み込みの AI モデル管理機能を有効にすることができます。 [ ENABLE AI features]\(AI 機能を有効にする \) チェックボックスをオンにしてオプトインします。 AI 機能が有効になっている場合、クラスターはモデル管理のサポート、 pgvector、および pg_diskann 拡張機能を使用してプロビジョニングします。

Note

AI 機能のセクションはプレビュー エクスペリエンスであり、環境やクラスターの構成によっては表示されない場合があります。 セクションが表示されない場合は、HorizonDB (プレビュー) クラスターの標準Azure設定とデプロイ手順に進みます。

手順 4: 使用条件に同意してデプロイする

フォームの下部:

  1. クラスター補足用語のチェック ボックスをオンにします。
  2. AI 機能を有効にし、AI 補足用語のチェック ボックスが表示されている場合は、それを選択します。
  3. リンクされた 利用規約プライバシー ポリシーを確認します。
  4. [ 作成] を選択してプロビジョニングを開始します。 フォームが不完全な場合は、無効な [作成 ] ボタンをポイントして、値が必要なフィールドを確認します。

拡張機能は、デプロイの各ステージを追跡する進行状況ページに移動します。 デプロイの概要には、選択した クラスター名サブスクリプションリソース グループ構成 (仮想コアとメモリ) が表示されます。

すべてのステージが完了すると、拡張機能によって新しいクラスターの接続プロファイルが作成されます。 [ 完了] を 選択して進行状況ページを閉じます。

Note

AI 機能を有効にし、AI モデル管理手順が失敗した場合でも、クラスターが作成され、接続プロファイルが追加されます。 進行状況ページには、AI モデル管理を手動で有効にできるように、Azure ポータルでクラスターを開く警告とリンクが表示されます。

Tip

拡張機能ウィザードで提供されるオプション以外のオプションが必要な場合は、フォームの下部にある [Azure portalで構成] を選択します。

サーバーを確認する

サーバーの作成後 (Docker またはAzure):

  1. [接続] ツリーでサーバー ノードを展開します。
  2. 既定のデータベース (postgres および Docker の場合は、指定したすべてのデータベース) が一覧表示されていることを確認します。
  3. データベースを右クリックし、[ 新しいクエリ ] を選択してクエリ エディターを開きます。
  4. SELECT version();などのテスト クエリを実行して、接続を確認します。