IBM Cloud Docs
IBM Cloud Hyper Protect DBaaS CLI 插件

IBM Cloud Hyper Protect DBaaS CLI 插件

不推荐使用 Hyper Protect DBaaS。 截至 2023 年 4 月 15 日,您无法创建新实例,将除去对免费实例的访问权。 支持现有付费实例,直到 2023 年 11 月 30 日。 将于 2024 年 3 月 1 删除现有实例。

此 CLI V 2.0. 需要输入参数 --output json 来返回 JSON 输出,以便与其他 CLI 插件保持一致。 这可能会中断正在运行的自动化。 如果仍使用 V 1.x ( 不推荐) ,请在命令中保留此选项。 版本 2.0 中的另一个更改是命令名称不再包含 -list-show (例如, ibmcloud dbaas cluster-show 现在为 ibmcloud dbaas cluster)。 不推荐使用旧的命令名,尽管它们仍可工作。

使用 IBM Cloud® Hyper Protect DBaaS CLI 插件可获取有关集群,数据库,用户和节点的信息,列出和下载日志文件,扩展资源,更新配置,备份和复原数据库以及检查任务状态。

先决条件

  1. 安装 IBM Cloud CLI。 IBM Cloud CLI 需要 Java SDK 1.7.0。 使用 IBM Cloud CLI 运行命令的前缀为 ibmcloud。 在终端中,当 ibmcloud CLI 和插件的更新可用时,将通知您。 务必使 CLI 保持最新,以便您可以使用所有可用的命令和标志。

  2. 安装 IBM Cloud Hyper Protect DBaaS CLI 插件。 请参阅 安装 Hyper Protect DBaaS for MongoDB CLI 插件安装 Hyper Protect DBaaS for PostgreSQL CLI 插件 以获取详细指示信息。 如果要查看当前版本的 Hyper Protect DBaaS CLI 插件,运行 ibmcloud plugin show dbaas

CLI 插件用法命令

ibmcloud dbaas help

此命令显示 DBaaS 命令的列表。

ibmcloud help dbaas

在返回的列表中,对于某些命令,您可以看到两个命令名称,例如 cluster, cluster-showdatabases, databases-list。 具有 -show-list 的是旧的命令名,不推荐使用但仍可工作。 建议在不使用 -list-show的情况下使用新命令,如以下部分中所述。

集群命令

ibmcloud dbaas cluster

此命令显示有关数据库集群的详细信息,包括有关每个节点的信息。

ibmcloud dbaas cluster RESOURCE_NAME [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long。 要查找资源名称,请使用 IBM Cloud 命令 ibmcloud resource service-instances
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

ibmcloud dbaas resource-scale

此命令可扩展集群资源 (磁盘, RAM 或 vCPU)。 有关有效值范围,请参阅 值表 (对于 MongoDB 和 PostgreSQL相同)。

ibmcloud dbaas resource-scale RESOURCE_NAME [--cpu|-c NUM_CPU] [--memory|-m MEM_GIB] [--storage|-s STORAGE_GIB] [--force] [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--cpu value
专用 CPU 核心的总数。
--memory value
内存分配总量(以 GiB 为单位)。 例如,--memory 4
--storage value
存储分配总量(以 GiB 为单位)。 例如,--storage 10
--force
在未确认 y/N 的情况下强制缩放。
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

数据库命令

ibmcloud dbaas databases

此命令列出集群上的所有数据库。

ibmcloud dbaas databases RESOURCE_NAME [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

数据库配置命令 (针对 PostgreSQL)

ibmcloud dbaas configuration

此命令显示数据库配置详细信息。

ibmcloud dbaas configuration RESOURCE_NAME [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

ibmcloud dbaas configuration-update

此命令从 JSON 文件或 JSON 字符串发送更改以更新数据库配置。

ibmcloud dbaas configuration-update RESOURCE_NAME [@JSON_FILE | JSON_STRING] [-f | --force] [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long

配置参数 都是整数。 请勿在 JSON 文件或字符串中指定单元。

@JSON_FILE
包含数据库配置的 JSON 文件。 例如:
ibmcloud dbaas configuration-update MyDBaaSIns03 @./conf.json

JSON 文件中的内容:

{
    "configuration":{
        "max_locks_per_transaction":150,
        "deadlock_timeout":1500,
        "shared_buffers":256,
        "max_connections":115
        
    }
}

如果只想更新其中一个设置,那么只需在文件中指定要更新的一个设置即可。 例如:

{
    "configuration":{
        "max_locks_per_transaction":150
    }
}
JSON_STRING
参数更改为发送到 JSON 文件。 例如, '{"configuration":{"max_locks_per_transaction":150}}' (对于 Windows ,请使用 "{\"configuration\": {\"max_locks_per_transaction\": 150}}")。 您可以使用 ibmcloud dbaas configuration 命令来获取可配置参数的列表。
-f, --force
强制配置更新而不提示确认。
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

数据库用户命令

ibmcloud dbaas users

此命令列出所有数据库用户。

ibmcloud dbaas users RESOURCE_NAME [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

ibmcloud dbaas user

此命令显示有关数据库用户的详细信息。

ibmcloud dbaas user RESOURCE_NAME AUTHDB_USER_NAME [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
AUTHDB_USER_NAME
要获取详细信息的用户的用户名。 您可以使用 ibmcloud dbaas users 命令来获取集群的用户列表。
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

日志命令

ibmcloud dbaas log-get

此命令从节点下载日志文件。

ibmcloud dbaas log-get RESOURCE_NAME NODE_ID FILE_NAME

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
NODE_ID
节点的标识。
FILE_NAME
要下载的日志文件的名称。 您可以使用 ibmcloud dbaas logs 命令来获取节点上现有日志文件的列表。

ibmcloud dbaas logs

此命令列出节点上的所有日志文件。 可以将列出的任何文件名用作 ibmcloud dbaas log-get 命令的输入。

ibmcloud dbaas logs RESOURCE_NAME NODE_ID [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
NODE_ID
节点的标识。
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

任务命令

ibmcloud dbaas tasks

此命令列出正在集群上运行或最近在集群上运行的所有任务。

ibmcloud dbaas tasks RESOURCE_NAME [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

ibmcloud dbaas task

此命令显示有关任务的详细信息。

ibmcloud dbaas task RESOURCE_NAME TASK_ID [--output json]

命令选项

RESOURCE_NAME
DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
TASK_ID
任务的标识。
--output
使用值为 json--output 选项来格式化 JSON 格式的输出。

备份和复原命令

使用 ibmcloud dbaas help backup 可查看备份和复原命令的列表。 backup 是包含所有备份和复原命令的子名称空间。

ibmcloud dbaas backup enable

此命令对数据库集群启用备份。

ibmcloud dbaas backup enable RESOURCE_NAME --cos-hmac-credentials-path CREDENTIALS_PATH --cos-endpoint COS_ENDPOINT --cos-bucket-crn BUCKET_CRN [--cos-frequency FREQUENCY] [--output json]

命令选项

RESOURCE_NAME
源 DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--cos-hmac-credentials-path value
包含 JSON 格式的 HMAC 凭证 (access_key_idsecret_access_key) 的文件的路径。 在创建服务凭证时,请确保为 包含 HMAC 凭证 设置 开启 。 您可以通过在 IBM Cloud Object Storage Web UI 中选择 服务凭证 来查找凭证。 创建一个包含从其中复制的完整 JSON 的文件,或者至少包含以下示例中的内容。 您还可以 将 HMAC 凭证设置为环境变量 并省略此命令选项。

HMAC 凭证示例:

{
    "cos_hmac_keys": {
      "access_key_id": "abc",
      "secret_access_key": "xyz"
    }
}
--cos-endpoint value
IBM Cloud Object Storage 的端点 (必需)。 在 IBM Cloud Object Storage Web UI 中,选择存储区,然后可以在 配置 选项卡中找到 端点 。 目前仅支持公共端点。 将很快提供对专用端点的支持。
--cos-bucket-crn value
IBM Cloud Object Storage 存储区 CRN (必需)。 在 IBM Cloud Object Storage Web UI 中,选择存储区,然后可以在 配置 选项卡中找到 存储区实例 CRN
--cos-frequency value
备份到 IBM Cloud Object Storage的频率。 缺省值为 8 小时。 此选项 仅可用于 PostgreSQL。 有效值为 1h2h4h8h1d2d1w
--output value
使用值为 json--output 选项来格式化 JSON 格式的输出。

ibmcloud dbaas backup disable

此命令将禁用数据库集群的备份。

ibmcloud dbaas backup disable RESOURCE_NAME [--output json]

命令选项

RESOURCE_NAME
源 DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--output value
使用值为 json--output 选项来格式化 JSON 格式的输出。

ibmcloud dbaas backup list

此命令列出数据库集群的 本地 (而不是 IBM Cloud Object Storage) 备份。

ibmcloud dbaas backup list RESOURCE_NAME [--output json]

命令选项

RESOURCE_NAME
源 DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--output value
使用值为 json--output 选项来格式化 JSON 格式的输出。

ibmcloud dbaas backup restore

此命令从本地存储器或数据库集群的 IBM Cloud Object Storage 复原备份。 要将备份复原到新的服务实例中,请先创建新的服务实例。

从本地存储器复原:

只能将本地备份复原到当前服务实例中。

ibmcloud dbaas backup restore RESOURCE_NAME --local-backup-id LOCAL_BACKUP_ID [--output json]

从 IBM Cloud Object Storage复原:

要将备份复原到新的服务实例中,请先创建新的服务实例。

ibmcloud dbaas backup restore RESOURCE_NAME --cos-hmac-credentials-path CREDENTIALS_PATH --cos-endpoint COS_ENDPOINT --cos-bucket-crn BUCKET_CRN --cos-backup-file FILE_NAME [--output json]

命令选项

RESOURCE_NAME
目标 DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--output value
使用值为 json--output 选项来格式化 JSON 格式的输出。

从本地存储器复原:

--local-backup-id value
要复原的本地备份的标识 (必需)。 可以使用 ibmcloud dbaas backup list 命令来获取本地备份的列表。

从 IBM Cloud Object Storage复原:

--cos-hmac-credentials-path value
包含 JSON 格式的 HMAC 凭证 (access_key_idsecret_access_key) 的文件的路径。 您可以通过在 IBM Cloud Object Storage Web UI 中选择 服务凭证 来查找凭证。 创建一个包含从其中复制的完整 JSON 的文件,或者至少包含以下示例中的内容。 您还可以 将 HMAC 凭证设置为环境变量 并省略此命令选项。

HMAC 凭证示例:

{
    "cos_hmac_keys": {
      "access_key_id": "abc",
      "secret_access_key": "xyz"
    }
}
--cos-endpoint value
IBM Cloud Object Storage 的端点 (必需)。 在 IBM Cloud Object Storage Web UI 中,选择存储区,然后可以在 配置 选项卡中找到 端点 。 目前仅支持公共端点。 将很快提供对专用端点的支持。
--cos-bucket-crn value
IBM Cloud Object Storage 存储区 CRN (必需)。 在 IBM Cloud Object Storage Web UI 中,选择存储区,然后可以在 配置 选项卡中找到 存储区实例 CRN
--cos-backup-file value
要复原的备份文件的名称 (必需)。 备份文件名标识生成备份时的日期和时间 yyyy-mm-dd-hhmmssZ (UTC)。 您可以通过以下任一方式获取 COS 备份文件的列表。
  1. 使用 UI。 在 IBM Cloud Object Storage Web UI 中,选择存储区,您可以在 对象 选项卡的 对象名称 列中找到可用文件名。
  2. 使用 IBM Cloud Object Storage CLI 插件。
  3. 安装并配置 IBM Cloud Object Storage 插件
  4. 使用 ibmcloud cos objects --bucket BUCKET 命令列出备份文件。

ibmcloud dbaas backup configuration

此命令显示数据库集群的备份配置。

ibmcloud dbaas backup configuration RESOURCE_NAME [--output json]

命令选项

RESOURCE_NAME
源 DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--output value
使用值为 json--output 选项来格式化 JSON 格式的输出。

ibmcloud dbaas backup configure

此命令将数据库集群的备份配置更改为 IBM Cloud Object Storage 。

ibmcloud dbaas backup configure RESOURCE_NAME [--cos-hmac-credentials-path CREDENTIALS_PATH --cos-endpoint COS_ENDPOINT --cos-bucket-crn BUCKET_CRN] [--cos-frequency FREQUENCY] [--output json]

命令选项

RESOURCE_NAME
源 DBaaS 服务实例的名称或 CRN。 要查找资源名称或 CRN ,请使用 IBM Cloud 命令 ibmcloud resource service-instances --long
--cos-hmac-credentials-path value
包含 JSON 格式的 HMAC 凭证 (access_key_idsecret_access_key) 的文件的路径。 您可以通过在 IBM Cloud Object Storage Web UI 中选择 服务凭证 来查找凭证。 创建一个包含从其中复制的完整 JSON 的文件,或者至少包含以下示例中的内容。 您还可以 将 HMAC 凭证设置为环境变量 并省略此命令选项。

HMAC 凭证示例:

{
    "cos_hmac_keys": {
      "access_key_id": "abc",
      "secret_access_key": "xyz"
    }
}
--cos-endpoint value
IBM Cloud Object Storage的端点。 如果设置了 --cos-bucket-crn ,那么此参数是必需的。 在 IBM Cloud Object Storage Web UI 中,选择存储区,然后可以在 配置 选项卡中找到 端点 。 目前仅支持公共端点。 将很快提供对专用端点的支持。
--cos-bucket-crn value
IBM Cloud Object Storage 存储区 CRN。 如果设置了 --cos-endpoint ,那么此参数是必需的。 在 IBM Cloud Object Storage Web UI 中,选择存储区,然后可以在 配置 选项卡中找到 存储区实例 CRN
--cos-frequency value
备份到 IBM Cloud Object Storage的频率。 此选项 仅可用于 PostgreSQL。 您可以使用 ibmcloud dbaas backup configuration 命令来获取当前值。 有效值为 1h2h4h8h1d2d1w
--output value
使用值为 json--output 选项来格式化 JSON 格式的输出。