Skip to main content
client.databases 管理 Square Cloud 的托管数据库(MongoDB、MySQL、PostgreSQL 和 Redis)。除 create 和 status_all 外,每个方法都以数据库 ID 作为第一个参数。要列出你的数据库,请使用 client.account.me():它的 databases 列表包含该密钥可见的所有数据库。 数据库托管需要 Standard、Pro 或 Enterprise 套餐。 示例使用创建客户端中的 client。database_id 是你的某个数据库的 ID:client.account.me() 会列出它们。

创建数据库

databases.create(name, type=, version=, memory=) 按位置接受名称,其他字段则以仅限关键字参数的形式传入。
password 和 certificate 仅由 create()(以及 reset_credentials())返回。该调用至少等待 120 秒才会超时。

获取数据库

更新数据库

update(database_id, name=None, ram=None) 重命名数据库或调整其大小。两个参数都只能以关键字形式传入,保留为 None 的参数不会被发送。至少传入一个(否则返回 400 NO_UPDATE_DATA)。

启动和停止

与应用的生命周期调用一样,它们至少等待 120 秒,被拒绝时返回 409,带有代码和空消息:CONTAINER_ALREADY_STARTED、CONTAINER_ALREADY_STOPPED、CONTAINER_NOT_FOUND、CONTAINER_INSUFFICIENT_DISK_SPACE、CONTAINER_NETWORK_CONFLICT 或 ACTION_FAILED。在 snapshot 恢复进行期间,它们会返回 403 RESTORE_IN_PROGRESS。

状态和指标

status(database_id) 返回格式化的值;raw=True(仅限关键字参数)返回数字。status_all() 为每个数据库返回一份摘要。metrics(database_id) 返回最近 24 小时的数据,每 5 分钟一个数据点,最新的在前。
状态字段与应用状态相同。

凭据

certificate(database_id) 以 base64 编码的 PEM 返回 TLS 证书。reset_credentials(database_id, type) 轮换密码(并返回新密码)或证书(并返回 '')。数据库必须处于运行状态(否则返回 400 DATABASE_NOT_RUNNING)。

删除数据库

删除是永久性的。如果你可能还需要这些数据,请先创建一个 snapshot。

Snapshots

client.databases.snapshots 拥有与应用相同的 list、create 和 restore。参见 Snapshots。

后续步骤

Workspaces

与团队共享应用。

数据库 API 参考

这些方法背后的 REST 端点。

用 CLI 管理数据库

在终端中完成同样的操作。