

# 使用兼容 PostgreSQL 的客户端访问 Aurora DSQL
<a name="accessing"></a>

Aurora DSQL 使用 [PostgreSQL 有线协议](https://www.postgresql.org/docs/current/protocol.html)。您可以通过各种工具和客户端（例如，AWS CloudShell、psql、DBeaver 和 DataGrip）连接到 PostgreSQL。下表汇总了 Aurora DSQL 与常见 PostgreSQL 连接参数的对应关系：


| PostgreSQL | Aurora DSQL | 备注 | 
| --- | --- | --- | 
| 角色（也称为用户或组） | 数据库角色 | Aurora DSQL 为您创建一个名为 admin 的角色。当您创建自定义数据库角色时，您必须使用 admin 角色将其与 IAM 角色关联，以便在连接到集群时进行身份验证。有关更多信息，请参阅 [使用数据库角色和 IAM 身份验证](using-database-and-iam-roles.md)。 | 
| 主机（也称为主机名或主机规格） | 集群端点 | Aurora DSQL 单区域集群提供单个托管式端点，当区域内出现不可用性问题时会自动重定向流量。 | 
| 端口 | 不适用：使用默认值 5432 | 这是 PostgreSQL 默认值。 | 
| 数据库（dbname） | 使用 postgres | Aurora DSQL 会在您创建集群时为您创建此数据库。 | 
| SSL 模式 | 始终在服务器端启用 SSL | 在 Aurora DSQL 中，Aurora DSQL 支持 require SSL 模式。Aurora DSQL 会拒绝没有 SSL 的连接。 | 
| 密码 | 身份验证令牌 | Aurora DSQL 需要临时身份验证令牌，而不是长期密码。要了解更多信息，请参阅[在 Amazon Aurora DSQL 中生成身份验证令牌](SECTION_authentication-token.md)。 | 

连接时，Aurora DSQL 要求使用签名的 IAM [身份验证令牌](https://docs.aws.amazon.com/aurora-dsql/latest/userguide/SECTION_authentication-token.html)替代传统密码。这些临时令牌通过 AWS 签名版本 4 生成，并且仅在建立连接期间使用。建立连接后，会话将保持活动状态，直至会话结束或客户端断开连接。

如果您尝试使用过期的令牌打开新会话，连接请求将失败，并且必须生成新令牌。有关更多信息，请参阅 [在 Amazon Aurora DSQL 中生成身份验证令牌](SECTION_authentication-token.md)。

## 使用 SQL 客户端访问 Aurora DSQL
<a name="accessing-sql-clients"></a>

Aurora DSQL 支持通过多种兼容 PostgreSQL 的客户端来连接到您的集群。以下各部分介绍如何使用 AWS CloudShell 或本地命令行通过 PostgreSQL 进行连接，以及如何使用基于 GUI 的工具（例如 DBeaver 和 JetBrains DataGrip）进行连接。每个客户端均需要一个有效的身份验证令牌，如上一部分所述。

**Topics**
+ [使用 SQL 客户端访问 Aurora DSQL](#accessing-sql-clients)
+ [使用 DBeaver 访问 Aurora DSQL](accessing-dbeaver.md)
+ [使用 JetBrains DataGrip 访问 Aurora DSQL](accessing-datagrip.md)
+ [使用 PostgreSQL 交互式终端（psql）访问 Aurora DSQL](accessing-psql.md)
+ [使用适用于 SQLTools 的 Aurora DSQL 驱动程序](accessing-vscode.md)
+ [问题排查](#accessing-troubleshooting)

## 问题排查
<a name="accessing-troubleshooting"></a>

**SQL 客户端的身份验证凭证过期**

已建立的会话会在最多 1 小时内保持身份验证状态，或者直到出现显式断开连接或客户端超时。如果需要建立新连接，则必须在连接的**密码**字段中生成并提供新的身份验证令牌。尝试打开新会话（例如，列出新表或打开新的 SQL 控制台）会强制尝试新的身份验证。如果在**连接**设置中配置的身份验证令牌不再有效，则该新会话将失败，并且所有先前打开的会话将变为无效。在通过 `expires-in` 选项选择 IAM 身份验证令牌的持续时间时，请记住一点：该持续时间默认设置为 15 分钟，最大值可设置为 7 天。

此外，请参阅 Aurora DSQL 文档的[故障排除](https://docs.aws.amazon.com/aurora-dsql/latest/userguide/troubleshooting.html)部分。