

# psql (PostgreSQL インタラクティブターミナル) を使用して Aurora DSQL にアクセスする
<a name="accessing-psql"></a>

## psql (PostgreSQL インタラクティブターミナル) を使用した Aurora DSQL へのアクセス
<a name="accessing-sql-clients-psql"></a>

AWS CloudShell から PostgreSQL インタラクティブターミナルを使用して Aurora DSQL にアクセスするには、次の手順に従います。詳細については、「[AWS CloudShell とは](https://docs.aws.amazon.com/cloudshell/latest/userguide/welcome.html)」を参照してください。

**AWS CloudShell を使用して接続するには**

1. [Aurora DSQL コンソール](https://console.aws.amazon.com/dsql)にサインインします。

1. CloudShell で開くクラスターを選択します。クラスターをまだ作成していない場合は、「[ステップ 1: Aurora DSQL 単一リージョンクラスターを作成する](getting-started.md#getting-started-create-cluster)」または「[マルチリージョンクラスターを作成する](getting-started.md#getting-started-multi-region)」の手順に従います。

1. **[クエリエディタと接続]** を選択し、**[CloudShell で接続]** を選択します。

1. admin として接続するか、[カスタムデータベースロール](https://docs.aws.amazon.com/aurora-dsql/latest/userguide/authentication-authorization.html#authentication-authorization-iam-role-connect)を使用して接続するかを選択します。

1. **[CloudShell で起動]** を選択し、次の CloudShell ダイアログで **[実行]** を選択します。

## ローカル CLI を使用して PostgreSQL インタラクティブターミナル (psql) で Aurora DSQL にアクセスする
<a name="accessing-sql-clients-psql-local"></a>

PostgreSQL ユーティリティへのターミナルベースのフロントエンドである `psql` を使用して、クエリをインタラクティブに入力し、PostgreSQL に発行して、クエリ結果を表示します。

**注記**  
クエリの応答時間を改善するには、PostgreSQL バージョン 17 クライアントを使用します。CLI を別の環境で使用する場合は、Python バージョン 3.8 以降と psql バージョン 14 以降を手動で設定してください。

[PostgreSQL のダウンロード](https://www.postgresql.org/download/)ページからオペレーティングシステムのインストーラーをダウンロードします。`psql` の詳細については、[PostgreSQL ウェブサイト](https://www.postgresql.org/docs/current/app-psql.htm)の「*PostgreSQL クライアントアプリケーション*」を参照してください。

AWS CLI が既にインストールされている場合は、次の例を使用してクラスターに接続します。

```
# Aurora DSQL requires a valid IAM token as the password when connecting.  
# Aurora DSQL provides tools for this and here we're using Python.  
export PGPASSWORD=$(aws dsql generate-db-connect-admin-auth-token \
  --region {{us-east-1}} \
  --expires-in 3600 \
  --hostname {{your_cluster_endpoint}})  
  
# Aurora DSQL requires SSL and will reject your connection without it.  
export PGSSLMODE=require  
  
# Connect with psql, which automatically uses the values set in PGPASSWORD and PGSSLMODE.  
# Quiet mode suppresses unnecessary warnings and chatty responses but still outputs errors.  
psql --quiet \
  --username admin \
  --dbname postgres \
  --host {{your_cluster_endpoint}}
```