IBM Cloud® Databases for EnterpriseDB 连接字符串
Databases for EnterpriseDB 已被弃用。 从 2025 年 6 月 16 日起,您将无法部署新的实例。 现有实例的支持服务将持续到2025年10月15日。 届时仍存在的任何实例将被删除。 更多信息,请参阅 Databases for EnterpriseDB 的弃用。
要连接到 IBM Cloud® Databases for EnterpriseDB,您需要一些用户和连接字符串。
在 UI 中获取连接字符串
部署的连接字符串显示在“仪表板概述”的“端点”窗格中。
Databases for EnterpriseDB 部署由管理员用户供应,在 设置管理员密码 之后,您可以使用其连接字符串来连接到部署。
在 CLI 中获取连接字符串
您还可以从 CLI 抓取连接字符串。
ibmcloud cdb deployment-connections example-deployment -u <newusername> [--endpoint-type <endpoint type>]
完整连接信息由带有 --all 标志的 ibmcloud cdb deployment-connections 命令返回。 要检索名为 "example-deployment" 的部署的所有连接信息,请使用以下命令。
ibmcloud cdb deployment-connections example-deployment -u <newusername> --all [--endpoint-type <endpoint type>]
如果未指定用户,那么缺省情况下,deployment-connections 命令将返回管理用户的信息。 如果未指定端点类型,那么缺省情况下,连接字符串将返回公共端点。 如果您的部署只有专用端点,那么必须指定 --endpoint-type private 或命令返回错误。 未强制实施用户和端点类型。 您可以将部署上的任何用户与任一端点配合使用 (如果这两个端点都存在于您的部署上)。
要使用 ibmcloud cdb CLI 命令,必须 安装 Cloud Databases 插件。
通过 API 获取连接字符串
要通过 API 检索用户的连接字符串,请使用 /users/{userid}/connections 端点。 必须在路径中指定应该在返回的连接字符串中使用哪些用户和哪种类型的端点 (公用或专用)。 未强制实施用户和端点类型。
您可以将部署上的任何用户与任一端点配合使用 (如果这两个端点都存在于您的部署上)。
curl -X GET -H "Authorization: Bearer $APIKEY" 'https://api.{region}.databases.cloud.ibm.com/v4/ibm/deployments/{id}/users/{userid}/connections/{endpoint_type}'
其他用户和连接字符串
对 Databases for EnterpriseDB 部署的访问权不限于管理用户。 您可以使用 服务凭证 窗格,IBM CLI 或通过 IBM Cloud Databases API 来创建用户。
部署上的所有用户都可以使用连接字符串,包括公共或专用端点的连接字符串。
创建用户时,将为其分配某些数据库角色和特权。 这些特权包括登录,创建数据库和创建其他用户的能力。 有关更多信息,请参阅 管理用户,角色和特权 页面。
在服务凭证 UI 中创建用户
- 前往服务控制面板,查看您的服务。
- 单击 服务凭证 以打开“服务凭证”窗格。
- 单击新建凭证。
- 为您的新证书选择一个描述性的名称。
- (可选) 指定新凭证应使用公共端点还是专用端点。 在 添加内联配置参数 字段中使用
{ "service-endpoints": "public" }/{ "service-endpoints": "private" }来生成使用指定端点的连接字符串。 不强制使用端点,它仅控制连接字符串中的主机名。 缺省情况下会生成公共端点。 - 单击 添加 以供应新凭证。 将自动生成用户名和密码以及 Databases for EnterpriseDB 数据库中的关联数据库用户。
新凭证显示在表中,连接字符串在“查看凭证”下的“单击以复制”字段中以 JSON 形式提供。
从命令行界面创建用户
如果通过 IBM Cloud CLI 和 云数据库插件 管理服务,那么可以使用 cdb user-create 创建新用户。 例如,要为 "example-deployment" 创建新用户,请使用以下命令。
ibmcloud cdb user-create example-deployment <newusername> <newpassword>
任务完成后,您可以使用 ibmcloud cdb deployment-connections 命令检索新用户的连接字符串。
通过 API 创建用户
_服务概览窗格_中显示的_基金会端点_提供了通过API访问此部署URL。 要创建和管理用户,请使用带有 /users 终端URL。
curl -X POST 'https://api.{region}.databases.cloud.ibm.com/v4/ibm/deployments/{id}/users' \
-H "Authorization: Bearer $APIKEY" \
-H "Content-Type: application/json" \
-d '{"username":"jane_smith", "password":"newsupersecurepassword"}'
任务完成后,您可以从 /users/{userid}/connections 端点检索新用户的连接字符串。
在服务凭证 UI 中添加用户
通过 CLI 创建新用户不会自动将该用户的连接字符串填充到 _服务凭证_中。 如果要将其添加到该处,那么可以使用现有用户信息创建新凭证。
在 JSON 字段 _添加内联配置参数_中输入用户名和密码,或者指定用于存储 JSON 信息的文件。 例如,将 {"existing_credentials":{"username":"Robert","password":"supersecure"}} 放在字段中会生成 服务凭证,并将用户名 "Robert"
和密码 "supersecure" 填充到连接字符串中。
从现有用户生成凭证不会检查或创建该用户。
连接字符串细分
Postgres 部分
"postgres" 部分包含适用于与 Databases for EnterpriseDB建立连接的应用程序的信息。
| 字段名称 | 索引 | 描述 |
|---|---|---|
Type |
连接类型-对于 Databases for EnterpriseDB,它是 "URI" | |
Scheme |
URI 的方案-对于 Databases for EnterpriseDB,它是 "postgresql" | |
Path |
URI 的路径-对于 Databases for EnterpriseDB,它是数据库名称。 默认的邮箱地址是 ibmclouddb。 |
|
Authentication |
Username |
用于连接的用户名。 |
Authentication |
Password |
用户的密码-可能显示为 $PASSWORD |
Authentication |
Method |
如何进行认证;“直接”认证由驱动程序处理。 |
Hosts |
0... |
要连接到的主机名和端口 |
Composed |
0... |
组合方案,认证,主机和路径的 URI |
Certificate |
Name |
用于数据库部署的自签名证书的已分配名称 |
Certificate |
Base64 | 证书的 base64 编码版本。 |
0...指示数组中可能有一个或多个这些条目。
CLI 部分
"CLI" 部分包含适合与 psql 连接的信息。
| 字段名称 | 索引 | 描述 |
|---|---|---|
Bin |
用于创建连接的建议二进制文件; 在此情况下为 psql。 |
|
Composed |
用于与部署建立连接的格式化命令。 该命令组合了 Bin 可执行文件,Environment 变量设置,并使用 |
|
Environment |
设置为环境变量的键/值的列表。 | |
Arguments |
0... | 作为参数传递给 "Bin" 字段中显示的命令的信息。 |
Certificate |
Base64 | 自签名证书,用于确认应用程序连接到相应的服务器。 这是 base64 编码。 |
Certificate |
名称 | 自签名证书的已分配名称。 |
Type |
使用此连接信息的包的类型; 在本例中为 cli。 |
0...指示数组中可能有一个或多个这些条目。