huawei-cloud-rds-smart-service

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Huawei Cloud RDS Smart Service

华为云RDS智能服务

Full-scenario intelligent service for Huawei Cloud RDS — covering basic Q&A, SQL optimization, daily O&M, fault diagnosis, parameter tuning, and backup recovery across all database engines.

华为云RDS全场景智能服务——覆盖所有数据库引擎的基础问答、SQL优化、日常运维、故障诊断、参数调优及备份恢复。

Overview

概述

This skill provides comprehensive intelligent services for Huawei Cloud Relational Database Service (RDS). It supports all database engines (MySQL, PostgreSQL, SQL Server, MariaDB, GaussDB for MySQL, TaurusDB) and covers six major capability domains:
DomainCapabilities
Basic Q&AProduct feature consultation, best practices, specification/version queries, instance listing
SQL OptimizationSlow log analysis, top SQL queries, execution plan guidance, index optimization suggestions, SQL limit control
Daily O&MHealth inspection, instance restart, flavor resize, disk expansion, primary-standby switchover, read replica management, auto-scaling policy
Fault DiagnosisError log analysis, replication status, connection diagnostics, recovery time window, instance diagnosis, intelligent session kill
Parameter TuningParameter group CRUD, parameter apply, instance parameter modification, parameter change history
Backup RecoveryBackup policy management, manual backup creation/deletion, restore to new/existing instance, point-in-time recovery, backup usage summary
SecuritySecurity group modification, SSL configuration, audit log management
本技能为华为云关系型数据库服务(RDS)提供全面的智能服务。支持所有数据库引擎(MySQL、PostgreSQL、SQL Server、MariaDB、GaussDB for MySQL、TaurusDB),涵盖六大核心能力域:
能力域具体能力
基础问答产品特性咨询、最佳实践、规格/版本查询、实例列表查看
SQL优化慢日志分析、Top SQL查询、执行计划指导、索引优化建议、SQL限流控制
日常运维健康巡检、实例重启、规格调整、磁盘扩容、主备切换、只读副本管理、自动扩缩容策略
故障诊断错误日志分析、复制状态查看、连接诊断、恢复时间窗口、实例诊断、智能会话终止
参数调优参数组增删改查、参数应用、实例参数修改、参数变更历史
备份恢复备份策略管理、手动备份创建/删除、恢复至新/已有实例、时间点恢复、备份使用汇总
安全管理安全组修改、SSL配置、审计日志管理

Architecture

架构

User Request → Skill Trigger Matching → Capability Domain Routing
  → CLI (hcloud RDS) → [fallback] → SDK (huaweicloudsdkrds.v3) → [fallback] → API (REST)
  → Result Formatting → Intelligent Analysis & Recommendations
用户请求 → 技能触发匹配 → 能力域路由
  → CLI (hcloud RDS) → [降级] → SDK (huaweicloudsdkrds.v3) → [降级] → API (REST)
  → 结果格式化 → 智能分析与建议

Applicable Scenarios

适用场景

  • Daily inspection: DBA checks instance health, resource usage, backup status
  • SQL optimization: Developer/DBA analyzes slow SQL, gets optimization suggestions
  • Fault troubleshooting: SRE/DBA diagnoses unreachable instances, high latency, connection exhaustion
  • Parameter tuning: DBA adjusts database parameters for performance
  • Backup recovery: DBA/Ops manages backup strategy, performs recovery drills
  • Basic Q&A: Developer/Junior DBA asks about RDS features and best practices

  • 日常巡检:DBA检查实例健康状态、资源使用情况、备份状态
  • SQL优化:开发人员/DBA分析慢SQL,获取优化建议
  • 故障排查:SRE/DBA诊断实例不可达、高延迟、连接耗尽等问题
  • 参数调优:DBA调整数据库参数以提升性能
  • 备份恢复:DBA/运维人员管理备份策略,执行恢复演练
  • 基础问答:开发人员/初级DBA咨询RDS特性及最佳实践

Prerequisites

前提条件

  1. hcloud CLI installed and authenticated — Reference: https://support.huaweicloud.com/qs-hcli/hcli_02_003.html
  2. Python 3.8+ with
    huaweicloudsdkrds
    package —
    pip install huaweicloudsdkrds
  3. Huawei Cloud AK/SK environment variables (
    HUAWEI_ACCESS_KEY
    /
    HUAWEI_SECRET_KEY
    or
    HWC_AK
    /
    HWC_SK
    )
  4. Default region:
    cn-north-4
    (override with
    --cli-region
    )
  5. IAM permissions: RDS read/write permissions (see
    references/iam-policies.md
    )

  1. hcloud CLI已安装并完成认证——参考:https://support.huaweicloud.com/qs-hcli/hcli_02_003.html
  2. **Python 3.8+**环境已安装
    huaweicloudsdkrds
    包——
    pip install huaweicloudsdkrds
  3. 华为云AK/SK环境变量已配置(
    HUAWEI_ACCESS_KEY
    /
    HUAWEI_SECRET_KEY
    HWC_AK
    /
    HWC_SK
  4. 默认区域
    cn-north-4
    (可通过
    --cli-region
    覆盖)
  5. IAM权限:拥有RDS读写权限(详见
    references/iam-policies.md

Workflow

工作流程

1. Basic Q&A — Product Knowledge & Instance Query

1. 基础问答——产品知识与实例查询

bash
undefined
bash
undefined

List all RDS instances

列出所有RDS实例

hcloud RDS ListInstances --cli-region=cn-north-4
hcloud RDS ListInstances --cli-region=cn-north-4

List instances filtered by engine type

按引擎类型过滤实例

hcloud RDS ListInstances --cli-region=cn-north-4 --datastore_type=MySQL
hcloud RDS ListInstances --cli-region=cn-north-4 --datastore_type=MySQL

List available flavors for a specific engine

查询特定引擎的可用规格

hcloud RDS ListFlavors --cli-region=cn-north-4 --database_name=MySQL --version_name=8.0
hcloud RDS ListFlavors --cli-region=cn-north-4 --database_name=MySQL --version_name=8.0

List available database versions

查询可用数据库版本

hcloud RDS ListDatastores --cli-region=cn-north-4 --database_name=MySQL
hcloud RDS ListDatastores --cli-region=cn-north-4 --database_name=MySQL

Show available upgrade versions for an instance

查询实例的可用升级版本

hcloud RDS ShowAvailableVersion --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowAvailableVersion --cli-region=cn-north-4 --instance_id={instance_id}

List engine flavors (available flavors for resizing)

查询引擎规格(用于调整实例规格的可用选项)

hcloud RDS ListEngineFlavors --cli-region=cn-north-4 --instance_id={instance_id} --ha_mode=ha --availability_zone_ids=cn-north-4a
hcloud RDS ListEngineFlavors --cli-region=cn-north-4 --instance_id={instance_id} --ha_mode=ha --availability_zone_ids=cn-north-4a

Show instance quotas

查询实例配额

hcloud RDS ShowQuotas --cli-region=cn-north-4
undefined
hcloud RDS ShowQuotas --cli-region=cn-north-4
undefined

2. SQL Performance Optimization

2. SQL性能优化

bash
undefined
bash
undefined

Query slow SQL logs (within last 30 days)

查询慢SQL日志(最近30天内)

hcloud RDS ListSlowLogs --cli-region=cn-north-4 --instance_id={instance_id}
--start_date=$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z) --end_date=$(date +%Y-%m-%dT%H:%M:%S%z)
hcloud RDS ListSlowLogs --cli-region=cn-north-4 --instance_id={instance_id}
--start_date=$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z) --end_date=$(date +%Y-%m-%dT%H:%M:%S%z)

Download slow log file

下载慢日志文件

hcloud RDS DownloadSlowlog --cli-region=cn-north-4 --instance_id={instance_id}
--file_name={file_name}
hcloud RDS DownloadSlowlog --cli-region=cn-north-4 --instance_id={instance_id}
--file_name={file_name}

Query TOP SQL statements

查询TOP SQL语句

hcloud RDS ListTopSqls --cli-region=cn-north-4 --instance_id={instance_id} --limit=10
hcloud RDS ListTopSqls --cli-region=cn-north-4 --instance_id={instance_id} --limit=10

Query historical TOP SQL

查询历史TOP SQL

hcloud RDS ListHistoryTopSqls --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000))
hcloud RDS ListHistoryTopSqls --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000))

Query historical wait events

查询历史等待事件

hcloud RDS ListHistoryWaitEvents --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000))
hcloud RDS ListHistoryWaitEvents --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000))

Query top objects (tables/indexes with high load)

查询高负载对象(高负载表/索引)

hcloud RDS ShowTopObjects --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowTopObjects --cli-region=cn-north-4 --instance_id={instance_id}

Set SQL limit (control SQL concurrency)

设置SQL限流(控制SQL并发数)

hcloud RDS CreateSqlLimit --cli-region=cn-north-4 --instance_id={instance_id} --db_name={db_name} --max_concurrency=10 --max_waiting=5
undefined
hcloud RDS CreateSqlLimit --cli-region=cn-north-4 --instance_id={instance_id} --db_name={db_name} --max_concurrency=10 --max_waiting=5
undefined

3. Daily O&M — Instance Management

3. 日常运维——实例管理

bash
undefined
bash
undefined

Restart instance

重启实例

hcloud RDS StartInstanceRestartAction --cli-region=cn-north-4 --instance_id={instance_id}
--restart.restart_server=true
hcloud RDS StartInstanceRestartAction --cli-region=cn-north-4 --instance_id={instance_id}
--restart.restart_server=true

Resize flavor (specification change)

调整实例规格

hcloud RDS StartResizeFlavorAction --cli-region=cn-north-4 --instance_id={instance_id} --resize_flavor.spec_code={spec_code}
hcloud RDS StartResizeFlavorAction --cli-region=cn-north-4 --instance_id={instance_id} --resize_flavor.spec_code={spec_code}

Enlarge disk volume

扩容磁盘

hcloud RDS StartInstanceEnlargeVolumeAction --cli-region=cn-north-4 --instance_id={instance_id}
--enlarge_volume.size=200
hcloud RDS StartInstanceEnlargeVolumeAction --cli-region=cn-north-4 --instance_id={instance_id}
--enlarge_volume.size=200

Reduce disk volume

缩容磁盘

hcloud RDS StartInstanceReduceVolumeAction --cli-region=cn-north-4 --instance_id={instance_id} --reduce_volume.size=100 --reduce_volume.is_delay=false
hcloud RDS StartInstanceReduceVolumeAction --cli-region=cn-north-4 --instance_id={instance_id} --reduce_volume.size=100 --reduce_volume.is_delay=false

Primary-standby switchover

主备切换

hcloud RDS StartFailover --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS StartFailover --cli-region=cn-north-4 --instance_id={instance_id}

Set read-only switch

设置只读切换

hcloud RDS SetReadOnlySwitch --cli-region=cn-north-4 --instance_id={instance_id} --readonly=true
hcloud RDS SetReadOnlySwitch --cli-region=cn-north-4 --instance_id={instance_id} --readonly=true

Update instance alias

更新实例别名

hcloud RDS UpdateInstanceAlias --cli-region=cn-north-4 --instance_id={instance_id} --alias=new_name
hcloud RDS UpdateInstanceAlias --cli-region=cn-north-4 --instance_id={instance_id} --alias=new_name

List tasks (async operation status)

查询任务列表(异步操作状态)

hcloud RDS ListTasks --cli-region=cn-north-4 --start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000))
hcloud RDS ListTasks --cli-region=cn-north-4 --start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000))

Show task detail

查询任务详情

hcloud RDS ShowTaskDetail --cli-region=cn-north-4 --instance_id={instance_id} --workflow_id={workflow_id} --workflow_name={workflow_name}
hcloud RDS ShowTaskDetail --cli-region=cn-north-4 --instance_id={instance_id} --workflow_id={workflow_id} --workflow_name={workflow_name}

Set auto disk expansion policy

设置自动磁盘扩容策略

hcloud RDS SetAutoEnlargePolicy --cli-region=cn-north-4 --instance_id={instance_id} --switch_option=true --limit_size=500 --trigger_threshold=15
hcloud RDS SetAutoEnlargePolicy --cli-region=cn-north-4 --instance_id={instance_id} --switch_option=true --limit_size=500 --trigger_threshold=15

Show auto disk expansion policy

查询自动磁盘扩容策略

hcloud RDS ShowAutoEnlargePolicy --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowAutoEnlargePolicy --cli-region=cn-north-4 --instance_id={instance_id}

Show storage used space

查询存储使用空间

hcloud RDS ShowStorageUsedSpace --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowStorageUsedSpace --cli-region=cn-north-4 --instance_id={instance_id}

List volume info

查询磁盘信息列表

hcloud RDS ListVolumeInfo --cli-region=cn-north-4 --instance_id={instance_id}
undefined
hcloud RDS ListVolumeInfo --cli-region=cn-north-4 --instance_id={instance_id}
undefined

4. Fault Diagnosis & Troubleshooting

4. 故障诊断与排查

bash
undefined
bash
undefined

Query error logs

查询错误日志

hcloud RDS ListErrorLogs --cli-region=cn-north-4 --instance_id={instance_id}
--start_date=$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z) --end_date=$(date +%Y-%m-%dT%H:%M:%S%z)
hcloud RDS ListErrorLogs --cli-region=cn-north-4 --instance_id={instance_id}
--start_date=$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z) --end_date=$(date +%Y-%m-%dT%H:%M:%S%z)

Query error logs (v3.1 enhanced)

查询错误日志(v3.1增强版)

hcloud RDS ListErrorLogsNew --cli-region=cn-north-4 --instance_id={instance_id}
--start_date=$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z) --end_date=$(date +%Y-%m-%dT%H:%M:%S%z)
hcloud RDS ListErrorLogsNew --cli-region=cn-north-4 --instance_id={instance_id}
--start_date=$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z) --end_date=$(date +%Y-%m-%dT%H:%M:%S%z)

Download error log file

下载错误日志文件

hcloud RDS DownloadErrorlog --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS DownloadErrorlog --cli-region=cn-north-4 --instance_id={instance_id}

Show replication status (primary-standby)

查询主备复制状态

hcloud RDS ShowReplicationStatus --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowReplicationStatus --cli-region=cn-north-4 --instance_id={instance_id}

Show recovery time window (for point-in-time recovery)

查询恢复时间窗口(用于时间点恢复)

hcloud RDS ShowRecoveryTimeWindow --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowRecoveryTimeWindow --cli-region=cn-north-4 --instance_id={instance_id}

List instance diagnosis results

查询实例诊断结果

hcloud RDS ListInstanceDiagnosis --cli-region=cn-north-4 --engine=mysql
hcloud RDS ListInstanceDiagnosis --cli-region=cn-north-4 --engine=mysql

List instance diagnosis info

查询实例诊断信息

hcloud RDS ListInstancesInfoDiagnosis --cli-region=cn-north-4 --engine=mysql --diagnosis=high_pressure
hcloud RDS ListInstancesInfoDiagnosis --cli-region=cn-north-4 --engine=mysql --diagnosis=high_pressure

Query historical sessions

查询历史会话

hcloud RDS ListHistorySessions --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000)) --limit=10 --offset=0
hcloud RDS ListHistorySessions --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000)) --limit=10 --offset=0

Intelligent kill session (kill problematic sessions)

智能终止会话(终止有问题的会话)

hcloud RDS CreateIntelligentKillSession --cli-region=cn-north-4 --instance_id={instance_id} --auto_add_sql_limit_rule=false
hcloud RDS CreateIntelligentKillSession --cli-region=cn-north-4 --instance_id={instance_id} --auto_add_sql_limit_rule=false

Show intelligent kill session history

查询智能终止会话历史

hcloud RDS ShowIntelligentKillSessionHistory --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000)) --page_num=1 --page_size=10
hcloud RDS ShowIntelligentKillSessionHistory --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(($(date -d '7 days ago' +%s)*1000)) --end_time=$(($(date +%s)*1000)) --page_num=1 --page_size=10

Show second-level monitoring

查询秒级监控

hcloud RDS ShowSecondLevelMonitoring --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowSecondLevelMonitoring --cli-region=cn-north-4 --instance_id={instance_id}

Validate instance connection (RDS for SQL Server only; requires user_info)

验证实例连接(仅适用于SQL Server版RDS;需传入user_info)

hcloud RDS ValidateInstanceConnection --cli-region=cn-north-4 --instance_id={instance_id}
--user_info.login_user_name=dbuser --user_info.login_user_password=***
--user_info.server_ip=1.2.3.4 --user_info.server_port=3306
undefined
hcloud RDS ValidateInstanceConnection --cli-region=cn-north-4 --instance_id={instance_id}
--user_info.login_user_name=dbuser --user_info.login_user_password=***
--user_info.server_ip=1.2.3.4 --user_info.server_port=3306
undefined

5. Parameter Tuning

5. 参数调优

bash
undefined
bash
undefined

List all parameter groups

查询所有参数组

hcloud RDS ListConfigurations --cli-region=cn-north-4
hcloud RDS ListConfigurations --cli-region=cn-north-4

Show parameter group details

查询参数组详情

hcloud RDS ShowConfiguration --cli-region=cn-north-4 --config_id={config_id}
hcloud RDS ShowConfiguration --cli-region=cn-north-4 --config_id={config_id}

Show instance parameter configuration

查询实例参数配置

hcloud RDS ShowInstanceConfiguration --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowInstanceConfiguration --cli-region=cn-north-4 --instance_id={instance_id}

Create parameter group

创建参数组

hcloud RDS CreateConfiguration --cli-region=cn-north-4
--name=custom_param_group --datastore.type=MySQL --datastore.version=8.0
hcloud RDS CreateConfiguration --cli-region=cn-north-4
--name=custom_param_group --datastore.type=MySQL --datastore.version=8.0

Update parameter group

更新参数组

hcloud RDS UpdateConfiguration --cli-region=cn-north-4 --config_id={config_id}
--values.max_connections=100
hcloud RDS UpdateConfiguration --cli-region=cn-north-4 --config_id={config_id}
--values.max_connections=100

Apply parameter group to instance (async)

向实例应用参数组(异步操作)

hcloud RDS ApplyConfigurationAsync --cli-region=cn-north-4 --config_id={config_id}
--instance_ids.1={instance_id}
hcloud RDS ApplyConfigurationAsync --cli-region=cn-north-4 --config_id={config_id}
--instance_ids.1={instance_id}

Update instance parameter directly

直接更新实例参数

hcloud RDS UpdateInstanceConfiguration --cli-region=cn-north-4 --instance_id={instance_id}
--values.max_connections=100
hcloud RDS UpdateInstanceConfiguration --cli-region=cn-north-4 --instance_id={instance_id}
--values.max_connections=100

List parameter change history

查询参数变更历史

hcloud RDS ListInstanceParamHistories --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ListInstanceParamHistories --cli-region=cn-north-4 --instance_id={instance_id}

Compare parameter configurations

对比参数配置

hcloud RDS CompareConfiguration --cli-region=cn-north-4 --source_id={source_id} --target_id={target_id}
undefined
hcloud RDS CompareConfiguration --cli-region=cn-north-4 --source_id={source_id} --target_id={target_id}
undefined

6. Backup & Recovery

6. 备份与恢复

bash
undefined
bash
undefined

Show backup policy

查询备份策略

hcloud RDS ShowBackupPolicy --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowBackupPolicy --cli-region=cn-north-4 --instance_id={instance_id}

Set backup policy

设置备份策略

hcloud RDS SetBackupPolicy --cli-region=cn-north-4 --instance_id={instance_id}
--backup_policy.keep_days=7 --backup_policy.start_time=00:00-01:00 --backup_policy.period=1,2,3,4,5,6,7
hcloud RDS SetBackupPolicy --cli-region=cn-north-4 --instance_id={instance_id}
--backup_policy.keep_days=7 --backup_policy.start_time=00:00-01:00 --backup_policy.period=1,2,3,4,5,6,7

Show backup configuration

查询备份配置

hcloud RDS ShowBackupConfig --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowBackupConfig --cli-region=cn-north-4 --instance_id={instance_id}

Change backup configuration

修改备份配置

hcloud RDS ChangeBackupConfig --cli-region=cn-north-4 --instance_id={instance_id} --default_backup_method=EBACKUP
hcloud RDS ChangeBackupConfig --cli-region=cn-north-4 --instance_id={instance_id} --default_backup_method=EBACKUP

List backups

查询备份列表

hcloud RDS ListBackups --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ListBackups --cli-region=cn-north-4 --instance_id={instance_id}

Create manual backup

创建手动备份

hcloud RDS CreateManualBackup --cli-region=cn-north-4
--instance_id={instance_id} --name=manual_backup_20240101
hcloud RDS CreateManualBackup --cli-region=cn-north-4
--instance_id={instance_id} --name=manual_backup_20240101

Delete manual backup

删除手动备份

hcloud RDS DeleteManualBackup --cli-region=cn-north-4 --backup_id={backup_id}
hcloud RDS DeleteManualBackup --cli-region=cn-north-4 --backup_id={backup_id}

Batch delete manual backups

批量删除手动备份

hcloud RDS BatchDeleteManualBackup --cli-region=cn-north-4 --backup_ids.1={backup_id_1} --backup_ids.2={backup_id_2}
hcloud RDS BatchDeleteManualBackup --cli-region=cn-north-4 --backup_ids.1={backup_id_1} --backup_ids.2={backup_id_2}

Show backup download link

查询备份下载链接

hcloud RDS ShowBackupDownloadLink --cli-region=cn-north-4 --backup_id={backup_id}
hcloud RDS ShowBackupDownloadLink --cli-region=cn-north-4 --backup_id={backup_id}

Restore to new instance

恢复至新实例

hcloud RDS CreateRestoreInstance --cli-region=cn-north-4
--restore_point.backup_id={backup_id} --name=restored_instance --flavor_ref={flavor_id}
--availability_zone=cn-north-4a,cn-north-4g --volume.size=100 --volume.type=CLOUDSSD
hcloud RDS CreateRestoreInstance --cli-region=cn-north-4
--restore_point.backup_id={backup_id} --name=restored_instance --flavor_ref={flavor_id}
--availability_zone=cn-north-4a,cn-north-4g --volume.size=100 --volume.type=CLOUDSSD

注意:
--password
与 KooCLI 系统参数同名冲突,无法直接传参。需用
echo 'b' |
管道选择"API参数"绕过,或用
--cli-jsonInput=jsonFile
传入整份 JSON body。恢复实例磁盘不能小于源实例(报 DBS.200073)。

注意:
--password
与 KooCLI 系统参数同名冲突,无法直接传参。需用
echo 'b' |
管道选择"API参数"绕过,或用
--cli-jsonInput=jsonFile
传入整份 JSON body。恢复实例磁盘不能小于源实例(报 DBS.200073)。

Restore to existing instance

恢复至已有实例

hcloud RDS RestoreToExistingInstance --cli-region=cn-north-4 --target.instance_id={target_instance_id} --source.instance_id={source_instance_id} --source.backup_id={backup_id} --source.type=backup
hcloud RDS RestoreToExistingInstance --cli-region=cn-north-4 --target.instance_id={target_instance_id} --source.instance_id={source_instance_id} --source.backup_id={backup_id} --source.type=backup

Restore tables (table-level recovery)

恢复表(表级恢复)

hcloud RDS RestoreTables --cli-region=cn-north-4 --instance_id={instance_id} --restoreTables.1.database={db_name} --restoreTables.1.tables.1.oldName={old_table} --restoreTables.1.tables.1.newName={new_table} --restoreTime=$(($(date -d '1 day ago' +%s)*1000))
hcloud RDS RestoreTables --cli-region=cn-north-4 --instance_id={instance_id} --restoreTables.1.database={db_name} --restoreTables.1.tables.1.oldName={old_table} --restoreTables.1.tables.1.newName={new_table} --restoreTime=$(($(date -d '1 day ago' +%s)*1000))

List instance backup summary

查询实例备份汇总

hcloud RDS ListInstanceBackupSummary --cli-region=cn-north-4
hcloud RDS ListInstanceBackupSummary --cli-region=cn-north-4

Show backup usage (by engine)

查询备份使用情况(按引擎)

hcloud RDS ShowBackupUsage --cli-region=cn-north-4 --engine=MySQL
undefined
hcloud RDS ShowBackupUsage --cli-region=cn-north-4 --engine=MySQL
undefined

7. Security Management

7. 安全管理

bash
undefined
bash
undefined

Set security group

设置安全组

hcloud RDS SetSecurityGroup --cli-region=cn-north-4 --instance_id={instance_id}
--security_group_id={sg_id}
hcloud RDS SetSecurityGroup --cli-region=cn-north-4 --instance_id={instance_id}
--security_group_id={sg_id}

Switch SSL configuration

切换SSL配置

hcloud RDS SwitchSsl --cli-region=cn-north-4 --instance_id={instance_id} --ssl_option=true
hcloud RDS SwitchSsl --cli-region=cn-north-4 --instance_id={instance_id} --ssl_option=true

List audit logs

查询审计日志列表

hcloud RDS ListAuditlogs --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z) --end_time=$(date +%Y-%m-%dT%H:%M:%S%z) --limit=10 --offset=0
hcloud RDS ListAuditlogs --cli-region=cn-north-4 --instance_id={instance_id}
--start_time=$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z) --end_time=$(date +%Y-%m-%dT%H:%M:%S%z) --limit=10 --offset=0

Show audit log policy

查询审计日志策略

hcloud RDS ShowAuditlogPolicy --cli-region=cn-north-4 --instance_id={instance_id}
hcloud RDS ShowAuditlogPolicy --cli-region=cn-north-4 --instance_id={instance_id}

Set audit log policy

设置审计日志策略

hcloud RDS SetAuditlogPolicy --cli-region=cn-north-4 --instance_id={instance_id} --keep_days=30 --audit_types.1=CREATE_USER
hcloud RDS SetAuditlogPolicy --cli-region=cn-north-4 --instance_id={instance_id} --keep_days=30 --audit_types.1=CREATE_USER

Show audit log download link

查询审计日志下载链接

hcloud RDS ShowAuditlogDownloadLink --cli-region=cn-north-4 --instance_id={instance_id} --ids.1={auditlog_id}

---
hcloud RDS ShowAuditlogDownloadLink --cli-region=cn-north-4 --instance_id={instance_id} --ids.1={auditlog_id}

---

KooCLI Command Format Standard

KooCLI命令格式规范

bash
hcloud RDS <Operation> --cli-region=<region> [--key=value ...]
FeatureDescriptionExample
Service name
RDS
(uppercase)
hcloud RDS ListInstances
Operation namePascalCase
ListInstances
,
ShowBackupPolicy
,
CreateManualBackup
Region parameter
--cli-region=<value>
--cli-region=cn-north-4
Simple parameter
--key=value
--instance_id=xxx
Indexed parameter
--key.1=value1
--instance_ids.1=xxx
Nested object parameter
--parent.child=value
--backup_policy.keep_days=7
,
--datastore.type=MySQL
注意: hcloud CLI 的 body/嵌套参数不支持整体 JSON 传参(
--param='{"k":"v"}'
会报
仅支持参数 X 的值为 {} 或 []
)。必须按
--parent.child=value
拆分传参。数组用下标
--instance_ids.1=xxx
bash
hcloud RDS <Operation> --cli-region=<region> [--key=value ...]
特性描述示例
服务名称
RDS
(大写)
hcloud RDS ListInstances
操作名称大驼峰命名(PascalCase)
ListInstances
,
ShowBackupPolicy
,
CreateManualBackup
区域参数
--cli-region=<value>
--cli-region=cn-north-4
简单参数
--key=value
--instance_id=xxx
索引参数
--key.1=value1
--instance_ids.1=xxx
嵌套对象参数
--parent.child=value
--backup_policy.keep_days=7
,
--datastore.type=MySQL
注意: hcloud CLI 的body/嵌套参数不支持整体JSON传参(
--param='{"k":"v"}'
会报
仅支持参数 X 的值为 {} 或 []
)。必须按
--parent.child=value
拆分传参。数组用下标
--instance_ids.1=xxx

SDK Fallback (Python)

SDK降级(Python)

When CLI is unavailable, use the Python SDK:
python
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcore.http.http_config import HttpConfig
from huaweicloudsdkrds.v3.rds_client import RdsClient
from huaweicloudsdkrds.v3.model.list_instances_request import ListInstancesRequest

credentials = BasicCredentials() \
    .with_ak(os.environ.get('HUAWEI_ACCESS_KEY')) \
    .with_sk(os.environ.get('HUAWEI_SECRET_KEY')) \
    .with_project_id('{project_id}')

client = RdsClient.new_builder() \
    .with_credentials(credentials) \
    .with_region(HwRegion.CN_NORTH_4) \
    .build()

request = ListInstancesRequest()
response = client.list_instances(request)
print(response)
当CLI不可用时,可使用Python SDK:
python
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcore.http.http_config import HttpConfig
from huaweicloudsdkrds.v3.rds_client import RdsClient
from huaweicloudsdkrds.v3.model.list_instances_request import ListInstancesRequest

credentials = BasicCredentials() \
    .with_ak(os.environ.get('HUAWEI_ACCESS_KEY')) \
    .with_sk(os.environ.get('HUAWEI_SECRET_KEY')) \
    .with_project_id('{project_id}')

client = RdsClient.new_builder() \
    .with_credentials(credentials) \
    .with_region(HwRegion.CN_NORTH_4) \
    .build()

request = ListInstancesRequest()
response = client.list_instances(request)
print(response)

API Fallback (REST)

API降级(REST)

When both CLI and SDK are unavailable, use REST API directly:
bash
curl -X GET "https://rds.cn-north-4.myhuaweicloud.com/v3/{project_id}/instances" \
  -H "X-Auth-Token: {token}" \
  -H "Content-Type: application/json"

当CLI和SDK均不可用时,可直接使用REST API:
bash
curl -X GET "https://rds.cn-north-4.myhuaweicloud.com/v3/{project_id}/instances" \
  -H "X-Auth-Token: {token}" \
  -H "Content-Type: application/json"

Core Commands

核心命令

CommandPurposeMode
hcloud RDS ListInstances
List all RDS instancesCLI
hcloud RDS ListFlavors
List available flavorsCLI
hcloud RDS ListDatastores
List database versionsCLI
hcloud RDS ListSlowLogs
Query slow SQL logsCLI
hcloud RDS ListTopSqls
Query TOP SQLCLI
hcloud RDS ListErrorLogs
Query error logsCLI
hcloud RDS ShowReplicationStatus
Check replication statusCLI
hcloud RDS ListInstanceDiagnosis
Instance diagnosisCLI
hcloud RDS ListConfigurations
List parameter groupsCLI
hcloud RDS ShowInstanceConfiguration
Show instance parametersCLI
hcloud RDS ListBackups
List backupsCLI
hcloud RDS ShowBackupPolicy
Show backup policyCLI
hcloud RDS CreateManualBackup
Create manual backupCLI
hcloud RDS CreateRestoreInstance
Restore to new instanceCLI
hcloud RDS SetSecurityGroup
Modify security groupCLI
hcloud RDS SwitchSsl
Configure SSLCLI
hcloud RDS ListAuditlogs
List audit logsCLI

命令用途模式
hcloud RDS ListInstances
列出所有RDS实例CLI
hcloud RDS ListFlavors
列出可用规格CLI
hcloud RDS ListDatastores
列出数据库版本CLI
hcloud RDS ListSlowLogs
查询慢SQL日志CLI
hcloud RDS ListTopSqls
查询TOP SQLCLI
hcloud RDS ListErrorLogs
查询错误日志CLI
hcloud RDS ShowReplicationStatus
检查复制状态CLI
hcloud RDS ListInstanceDiagnosis
实例诊断CLI
hcloud RDS ListConfigurations
列出参数组CLI
hcloud RDS ShowInstanceConfiguration
查看实例参数CLI
hcloud RDS ListBackups
列出备份CLI
hcloud RDS ShowBackupPolicy
查看备份策略CLI
hcloud RDS CreateManualBackup
创建手动备份CLI
hcloud RDS CreateRestoreInstance
恢复至新实例CLI
hcloud RDS SetSecurityGroup
修改安全组CLI
hcloud RDS SwitchSsl
配置SSLCLI
hcloud RDS ListAuditlogs
列出审计日志CLI

参数确认 (Parameter Confirmation)

参数确认 (Parameter Confirmation)

ParameterRequiredDescriptionExample
--cli-region
YesHuawei Cloud region
cn-north-4
--instance_id
Yes (most ops)RDS instance ID
rds-xxxxx
--project_id
AutoProject ID (auto from credentials)Auto
--datastore_type
NoFilter by engine type
MySQL
--config_id
Yes (param ops)Parameter group ID
xxxxx
--backup_id
Yes (backup ops)Backup ID
xxxxx
--resize_flavor.spec_code
Yes (resize)Target flavor spec code
rds.mysql.n1.large.4.ha
--start_date
/
--end_date
Yes (log ops)Date range (ISO 8601, only last 30 days)
$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z)
--enlarge_volume.size
Yes (disk ops)Target disk size in GB
200
参数是否必填描述示例
--cli-region
华为云区域
cn-north-4
--instance_id
是(多数操作)RDS实例ID
rds-xxxxx
--project_id
自动获取项目ID(从凭证自动获取)自动
--datastore_type
按引擎类型过滤
MySQL
--config_id
是(参数操作)参数组ID
xxxxx
--backup_id
是(备份操作)备份ID
xxxxx
--resize_flavor.spec_code
是(规格调整)目标规格编码
rds.mysql.n1.large.4.ha
--start_date
/
--end_date
是(日志操作)日期范围(ISO 8601格式,仅支持最近30天)
$(date -d '7 days ago' +%Y-%m-%dT00:00:00%z)
--enlarge_volume.size
是(磁盘操作)目标磁盘大小(GB)
200

Mutating Operations Requiring User Confirmation

需要用户确认的变更操作

The following operations modify RDS resources and must prompt the user for explicit confirmation before execution:
  • Instance: Restart, Resize, Disk Expand/Reduce, Failover, Stop(删除实例属高风险操作,本技能不支持,请通过华为云控制台操作)
  • Backup: Create Manual Backup, Delete Backup, Restore Instance
  • Parameter: Create/Update/Delete Configuration, Apply Configuration, Update Instance Parameter
  • Security: Set Security Group, Switch SSL, Set Audit Log Policy
  • Session: Intelligent Kill Session

以下操作会修改RDS资源,必须在执行前提示用户明确确认:
  • 实例操作:重启、规格调整、磁盘扩容/缩容、主备切换、停止(删除实例属于高风险操作,本技能不支持,请通过华为云控制台操作)
  • 备份操作:创建手动备份、删除备份、恢复实例
  • 参数操作:创建/更新/删除参数组、应用参数组、更新实例参数
  • 安全操作:设置安全组、切换SSL、设置审计日志策略
  • 会话操作:智能终止会话

输出格式 (Output Format)

输出格式 (Output Format)

All command outputs are returned as structured JSON. The skill formats results into readable tables and provides intelligent analysis:
所有命令输出均以结构化JSON返回。本技能会将结果格式化为易读的表格,并提供智能分析:

CLI Output

CLI输出

json
{
  "instances": [
    {"id": "rds-xxxxx", "name": "my-db", "status": "ACTIVE", "type": "Single", "engine": "MySQL"}
  ]
}
json
{
  "instances": [
    {"id": "rds-xxxxx", "name": "my-db", "status": "ACTIVE", "type": "Single", "engine": "MySQL"}
  ]
}

Analysis Output

分析输出

FieldDescription
status
Instance health status (ACTIVE/FAILED/BUILD)
recommendation
Suggested action based on analysis
risk_level
Risk assessment (low/medium/high)

字段描述
status
实例健康状态(ACTIVE/FAILED/BUILD)
recommendation
基于分析给出的建议操作
risk_level
风险评估(低/中/高)

验证方法 (Verification)

验证方法 (Verification)

  • CLI verification: Run
    hcloud RDS ListInstances --cli-region=cn-north-4
    and confirm JSON output
  • SDK verification: Execute Python SDK snippet and check
    response.status_code == 200
  • API verification: Send REST request and verify
    200 OK
    response with valid JSON body
  • End-to-end: Create a test instance, query its status, then clean up
  • Reference: See Verification Method for detailed test procedures

  • CLI验证:执行
    hcloud RDS ListInstances --cli-region=cn-north-4
    并确认JSON输出
  • SDK验证:运行Python SDK代码片段,检查
    response.status_code == 200
  • API验证:发送REST请求,验证返回
    200 OK
    及有效JSON体
  • 端到端验证:创建测试实例,查询其状态,然后清理资源
  • 参考文档:详见验证方法中的详细测试流程

Reference Documents

参考文档

  • IAM Policies — Least-privilege IAM policies for RDS operations
  • Verification Method — Verification and testing methodology
  • Dataflow Diagram — Mermaid data flow diagram
  • Acceptance Criteria — Acceptance criteria for the skill
  • CLI Installation Guide — CLI installation and configuration
  • API Paths — REST API paths verified from SDK source
  • RDS Troubleshooting Guide — Common fault diagnosis procedures
  • SQL Optimization Guide — SQL performance optimization methodology

  • IAM策略 — RDS操作的最小权限IAM策略
  • 验证方法 — 验证与测试方法论
  • 数据流图 — Mermaid格式的数据流图
  • 验收标准 — 本技能的验收标准
  • CLI安装指南 — CLI安装与配置说明
  • API路径 — 从SDK源码中验证的REST API路径
  • RDS故障排查指南 — 常见故障诊断流程
  • SQL优化指南 — SQL性能优化方法论

Best Practices

最佳实践

  • Always specify
    --cli-region
    explicitly to avoid region confusion
  • Use
    --datastore_type
    filter when listing instances to narrow results
  • For slow log analysis, limit date range to 7 days for performance
  • Before resizing, check available flavors with
    ListEngineFlavors
  • Before restoring, verify recovery time window with
    ShowRecoveryTimeWindow
  • Parameter changes should be tested on non-production instances first
  • Backup deletion is irreversible — always verify backup ID before deletion
  • Use audit logs for compliance and security investigation

  • 始终显式指定
    --cli-region
    以避免区域混淆
  • 列出实例时使用
    --datastore_type
    过滤以缩小结果范围
  • 慢日志分析时,将日期范围限制在7天内以提升性能
  • 调整规格前,使用
    ListEngineFlavors
    查询可用规格
  • 恢复前,使用
    ShowRecoveryTimeWindow
    验证恢复时间窗口
  • 参数变更应先在非生产实例上测试
  • 备份删除不可恢复——删除前务必验证备份ID
  • 使用审计日志进行合规性检查与安全调查

Notes

注意事项

  • All mutating operations (Create/Update/Delete/Restart/Resize/Restore) require explicit user confirmation
  • Credentials (AK/SK) are read from environment variables; hardcoding is prohibited
  • CLI is the primary execution mode; SDK and API are fallbacks for unavailable CLI commands
  • Date format: log commands (
    --start_date
    /
    --end_date
    ) use ISO 8601 with timezone offset (e.g.,
    2026-08-04T00:00:00+0800
    ); task commands (
    --start_time
    /
    --end_time
    ) use UTC epoch milliseconds
  • 日志/慢SQL 查询仅支持查询当前时间前一个月内的数据。日期格式使用带时区偏移的 ISO 8601(如
    2026-08-04T00:00:00+0800
    ),用
    $(date -d '7 days ago' +%Y-%m-%dT00:00:00%z)
    动态生成;注意不要使用 UTC 的
    Z
    结尾
    ...T00:00:00Z
    ),实测会导致
    DBS.01010023
    报错。
    ListTasks
    /
    ListHistory*
    等任务类命令的
    --start_time
    /
    --end_time
    需传 UTC 毫秒时间戳
    $(($(date -d '7 days ago' +%s)*1000))
    )。不要照抄过期的静态示例日期
  • Slow log queries are limited to the last 30 days
  • The skill supports all RDS engines: MySQL, PostgreSQL, SQL Server, MariaDB, GaussDB(for MySQL), TaurusDB
  • Engine capability limits (MySQL) — the following read commands return
    DBS.280343
    (Operation not allowed by the DB engine) on MySQL; they are supported on other engines only, and are not defects in the skill:
    ListTopSqls
    ,
    ShowTopObjects
    ,
    ListVolumeInfo
    ,
    ShowAvailableVersion
    ,
    ValidateInstanceConnection
    (SQL Server only),
    ListHistoryTopSqls
    ,
    ListHistorySessions
    ,
    ListHistoryWaitEvents
    .
    ShowBackupConfig
    /
    ShowRecoveryTimeWindow
    also return
    DBS.280238
    /
    DBS.280235
    on MySQL.
  • Whitelist permission limits
    ListInstanceBackupSummary
    /
    ShowBackupUsage
    return
    DBS.01280003
    (domain not in whitelist); these require whitelist activation from Huawei Cloud.
  • ListEngineFlavors
    requires single AZ (
    --availability_zone_ids=cn-north-4a
    ); comma-separated multi-AZ returns
    DBS.280244
    .
  • 所有变更操作(创建/更新/删除/重启/调整规格/恢复)均需用户明确确认
  • 凭证(AK/SK)从环境变量读取;禁止硬编码
  • CLI为主要执行模式;SDK和API为CLI不可用时的降级方案
  • 日期格式:日志命令(
    --start_date
    /
    --end_date
    )使用带时区偏移的ISO 8601格式(如
    2026-08-04T00:00:00+0800
    );任务命令(
    --start_time
    /
    --end_time
    )使用UTC毫秒时间戳
  • 日志/慢SQL 查询仅支持查询当前时间前一个月内的数据。日期格式使用带时区偏移的 ISO 8601(如
    2026-08-04T00:00:00+0800
    ),用
    $(date -d '7 days ago' +%Y-%m-%dT00:00:00%z)
    动态生成;注意不要使用 UTC 的
    Z
    结尾
    ...T00:00:00Z
    ),实测会导致
    DBS.01010023
    报错。
    ListTasks
    /
    ListHistory*
    等任务类命令的
    --start_time
    /
    --end_time
    需传 UTC 毫秒时间戳
    $(($(date -d '7 days ago' +%s)*1000))
    )。不要照抄过期的静态示例日期
  • 慢日志查询限制为最近30天
  • 本技能支持所有RDS引擎:MySQL、PostgreSQL、SQL Server、MariaDB、GaussDB(for MySQL)、TaurusDB
  • 引擎能力限制(MySQL) — 以下查询命令在MySQL上会返回
    DBS.280343
    (数据库引擎不允许此操作);这些命令仅在其他引擎上支持,不属于本技能缺陷:
    ListTopSqls
    ShowTopObjects
    ListVolumeInfo
    ShowAvailableVersion
    ValidateInstanceConnection
    (仅SQL Server支持)、
    ListHistoryTopSqls
    ListHistorySessions
    ListHistoryWaitEvents
    ShowBackupConfig
    /
    ShowRecoveryTimeWindow
    在MySQL上也会返回
    DBS.280238
    /
    DBS.280235
  • 白名单权限限制
    ListInstanceBackupSummary
    /
    ShowBackupUsage
    会返回
    DBS.01280003
    (域名不在白名单中);这些功能需要向华为云申请白名单激活。
  • ListEngineFlavors
    需要指定单个可用区(
    --availability_zone_ids=cn-north-4a
    );逗号分隔的多可用区会返回
    DBS.280244