活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 安全隔离版OpenClaw NEW OpenClaw云服务器专属“龙虾“套餐低至1.5折起
  • 青云志云端助力计划 NEW 一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云
  • 云上钜惠 爆款云主机全场特惠,2核4G只要1.8折起!
  • 中小企业服务商合作专区 国家云助力中小企业腾飞,高额上云补贴重磅上线
  • 出海产品促销专区 NEW 爆款云主机低至2折,高性价比,不限新老速来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

息壤智算

领先开放的智算服务平台,提供算力、平台、数据、模型、应用“五位一体”智算服务体系,构建全流程的AI基础设施能力
AI Store
  • 算力市场
  • 模型市场
  • 应用市场
  • MCP市场
公共算力服务
  • 裸金属
  • 定制裸金属
训推服务
  • 模型开发
  • 训练任务
  • 服务部署
模型推理服务
  • 模型广场
  • 体验中心
  • 服务接入
应用托管
  • 应用实例
科研助手
  • 科研智能体
  • 科研服务
  • 开发机
  • 并行计算
大模型
  • DeepSeek-V3.1
  • DeepSeek-R1-0528
  • DeepSeek-V3-0324
  • Qwen3-235B-A22B
  • Qwen3-32B
智算一体机
  • 智算一体机
模型适配专家服务
  • 模型适配专家服务
算力服务商
  • 入驻算力服务商

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场进入AI Store创新解决方案公有云生态专区智云上海应用生态专区
建站工具
  • 新域名服务
  • SSL证书
  • 翼建站
企业办公
  • 安全邮箱
  • WPS 365 天翼云版
  • 天翼企业云盘(标准服务版)
灾备迁移
  • 云管家2.0
  • 翼备份(SaaS版)

定价

协助您快速了解云产品计费模式、价格详情,轻松预估上云成本
价格计算器
  • 动态测算产品价格
定价策略
  • 快速了解计费模式

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼信创云专区
  • 信创云专区
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
培训与认证
  • 天翼云学堂
  • 天翼云认证
开源社区
  • 魔乐社区
  • OpenTeleDB

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 服务保障
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家
我要反馈
  • 建议与反馈
  • 用户体验官
信息公告
  • 客户公告

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 息壤智算
  • 产品
  • 解决方案
  • 应用商城
  • 定价
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      云主机备份_相关内容
      • DeepSeek专题导航
        图解:DeepSeek与公有云深度融合 从基础设施到智能中枢:DeepSeek如何重塑公有云服务价值链 高性能GPU云主机助力DeepSeek深度应用 天翼云SDWAN与DeepSeek超强联动,开启云上高效互联新时代 实践指南:DeepSeek驱动高效能云生态 GPU云主机/弹性云主机:零基础搭建DeepSeek云端环境指南 GPU物理机:物理机搭建DeepSeek指南 SDWAN跨境:SDWAN助力DeepSeek模型定向加速 智算容器:云容器引擎与DeepSeek融合实践 函数计算:天翼云函数计算与DeepSeek大模型 Q&A:典型问题解析与策略应对 常见问题解答
        来自:
        帮助文档
        天翼云SD-WAN
        DeepSeek专题
        DeepSeek专题导航
      • Linux虚机product_uuid参数是否可以修改
        本文向您介绍Linux虚机productuuid参数是否可以修改 productuuid是计算机唯一标识符(UUID),是一种用于标识计算机硬件的数字代码。 在云平台上,Linux云主机的productuuid参数是由虚拟化层模拟的硬件参数,通常情况下不同云主机之间的productuuid不会重复,也无法修改。
        来自:
        帮助文档
        弹性云主机 ECS
        常见问题
        产品咨询类
        Linux虚机product_uuid参数是否可以修改
      • 超高IO型Ir7n
        本文主要介绍超高IO型Ir7n 概述 超高I/O型弹性云主机使用高性能NVMe SSD本地磁盘,提供高存储IOPS以及低读写时延,您可以通过管理控制台创建挂载有高性能NVMe SSD盘的弹性云主机。 类型 CPU基频/睿频 CPU型号 Ir7n 2.6GHz/3.4GHz 6348 使用场景 超高I/O型弹性云主机适用于高性能关系型数据库 NoSQL数据库(Cassandra、MongoDB等)以及ElasticSearch搜索等场景 规格 表 Ir7n型弹性云主机的规格 规格名称 vCPU 内存(GiB) 最大带宽/基准带宽(Gbps) 最大收发包能力(万PPS) 网络连接数(万) 网卡多队列数 网卡个数上限 辅助网卡个数上限 本地盘(GiB) 虚拟化类型 ir7n.large.4 2 8 3/0.9 40 50 2 3 32 2 × 50 KVM ir7n.xlarge.4 4 16 6/1.8 80 50 2 3 32 2 × 100 KVM ir7n.2xlarge.4 8 32 15/3.6 150 100 4 4 64 2 × 200 KVM ir7n.4xlarge.4 16 64 20/7.3 300 150 4 6 96 2 × 400 KVM ir7n.8xlarge.4 32 128 30/14.5 400 300 8 8 192 2 × 800 KVM ir7n.16xlarge.4 64 256 40/29 600 500 16 8 256 2 × 1600 KVM
        来自:
        帮助文档
        弹性云主机 ECS
        产品介绍
        实例规格(X86)
        超高IO型
        超高IO型Ir7n
      • 创建同步任务
        使用流程 一次完整的实时同步,是通过创建实时同步任务,以同步任务作为导向,依次进行同步进度观察、同步日志分析、同步数据一致性对比等多项操作。通过多项指标和数据的对比分析,可以帮助您实现不同业务系统间的数据实时同步。 一次完整的实时同步包含如下过程: 图 实时同步流程 步骤1:创建同步任务。根据需要,选择源和目标数据库,创建同步任务。 步骤2:查询同步进度。同步过程中,可以通过查看同步进度了解实时同步的完成情况。 步骤3:查看同步日志。同步日志包含告警、错误和提示等类型的信息,可根据此类信息分析系统存在的问题。 步骤4:对比同步项。实时同步提供对比功能,可根据需要查看对象级对比、数据级对比等,来确保源和目标数据库的数据一致性。 步骤5:本小节以MySQL>RDS for MySQL的实时同步为示例,介绍如何使用数据复制服务创建两个数据库实例之间的实时同步任务,其他存储引擎的配置流程类似。 前提条件 步骤1:已登录数据复制服务控制台。 步骤2:满足实时同步支持的数据库类型和版本,详情请参见实时同步。 操作步骤 步骤 1 在“实时同步管理”页面,单击“创建同步任务”。 步骤 2 在“同步实例”页面,填选任务名称、描述、同步实例信息,单击“下一步”。 表 任务和描述 参数 描述 :: 任务名称 任务名称在450位之间,必须以字母开头,不区分大小写,可以包含字母、数字、中划线或下划线,不能包含其他的特殊字符。 描述 描述不能超过256位,且不能包含! & ' " 特殊字符。 表 同步实例信息 参数 描述 :: 数据流动方向 选择“入云”,即目标端数据库为本云数据库。 源数据库引擎 选择“MySQL”。 目标数据库引擎 选择“MySQL”。 网络类型 此处以公网网络为示例。 可根据业务场景选择公网网络、VPC网络和VPN、专线网络。 目标数据库实例 用户所创建的关系型数据库实例。 说明 目标数据库实例不支持选择只读实例。 目标数据库实例可以和源数据库选择同一个实例。 同步实例所在子网 请选择同步实例所在的子网。也可以单击“查看子网”,跳转至“网络控制台”查看实例所在子网帮助选择。 默认值为当前所选数据库实例所在子网,请选择有可用IP地址的子网。为确保同步实例创建成功,仅显示已经开启DHCP的子网。 IP类型 选择迁移实例的IP类型,目前支持选择“IPv4”或“IPv4&IPv6双栈”。只有所选择的VPC及子网都开启了IPv6双栈功能,才能选择IP类型为“IPv4&IPv6双栈”。 同步类型 此处以“全量+增量”为示例。 “全量+增量”:该模式为数据持续性实时同步,通过全量过程完成目标端数据库的初始化后,增量同步阶段通过解析日志等技术,将源端和目标端数据保持数据持续一致。 说明 选择“全量+增量”同步模式,增量同步可以在全量同步完成的基础上实现数据的持续同步,无需中断业务,实现同步过程中源业务和数据库继续对外提供访问。 “增量”:增量同步通过解析日志等技术,将源端产生的增量数据同步至目标端。 标签 可选配置,对同步任务的标识。使用标签可方便管理您的任务。每个任务最多支持10个标签配额。 任务创建成功后,您可以单击任务名称,在“标签”页签下查看对应标签。关于标签的详细操作,请参见 标签管理。 步骤 3 同步实例创建成功后,在“源库及目标库”页面,填选源库信息和目标库信息后,单击“源库和目标库”处的“测试连接”,分别测试并确定与源库和目标库连通后,勾选协议,单击“下一步”。 表 源库信息 参数 描述 :: IP地址或域名 源数据库的IP地址或域名。 端口 源数据库服务端口,可输入范围为1~65535间的整数。 数据库用户名 源数据库的用户名。 数据库密码 源数据库用户名所对应的密码。支持在任务创建后修改密码。 任务为启动中、全量同步、增量同步、增量同步失败状态时,可在“基本信息”页面的“同步信息”区域,单击“源库密码”后的“替换密码”,在弹出的对话框中修改密码。 SSL安全连接 通过该功能,用户可以选择是否开启对同步链路的加密。如果开启该功能,需要用户上传SSL CA根证书。 说明 最大支持上传500KB的证书文件。 如果不使用SSL证书,请自行承担数据安全风险。 说明 源数据库IP地址、端口、用户名和密码将在同步过程中被加密暂存到数据库和同步实例主机上,待该任务删除后会永久清除。 表 目标库信息 参数 描述 :: 数据库实例名称 默认为创建同步任务时选择的关系型数据库实例,不可进行修改。 数据库用户名 目标数据库对应的用户名。 数据库密码 目标数据库用户名对应的密码。支持在任务创建后修改密码。 任务为启动中、全量同步、增量同步、增量同步失败状态时,可在“基本信息”页面的“同步信息”区域,单击“目标库密码”后的“替换密码”,在弹出的对话框中修改密码。 说明 目标数据库用户名和密码将在同步过程中被加密暂存到数据库和同步实例主机上,待该任务删除后会永久清除。 步骤 4 在“设置同步”页面,选择数据冲突策略和同步对象,单击“下一步”。 表 同步模式和对象 参数 描述 :: 流速模式 流速模式支持限速和不限速,默认为不限速。 限速自定义的最大同步速度,全量同步过程中的同步速度将不会超过该速度。 当流速模式选择了“限速”时,你需要通过流速设置来定时控制同步速度。流速设置通常包括限速时间段和流速大小的设置。默认的限速时间段为全天限流,您也可以根据业务需求自定义时段限流。自定义的时段限流支持最多设置3个定时任务,每个定时任务之间不能存在交叉的时间段,未设定在限速时间段的时间默认为不限速。 流速的大小需要根据业务场景来设置,不能超过9999MB/s。 不限速对同步速度不进行限制,通常会最大化使用源数据库的出口带宽。该流速模式同时会对源数据库造成读消耗,消耗取决于源数据库的出口带宽。比如源数据库的出口带宽为100MB/s,假设高速模式使用了80%带宽,则同步对源数据库将造成80MB/s的读操作IO消耗。 说明 限速模式只对全量阶段生效,增量阶段不生效。 您也可以在创建任务后修改流速模式。具体方法请参见修改流速模式。 增量阶段冲突策略 该冲突策略特指增量同步中的冲突处理策略,全量阶段的冲突默认忽略。冲突策略目前支持如下三种形式: 忽略当同步数据与目标数据库已有数据冲突时(主键/唯一键存在重复等),将跳过冲突数据,继续进行后续同步。 报错当同步数据与目标数据库已有数据冲突时(主键/唯一键存在重复等),同步任务将失败并立即中止。 覆盖当同步数据与目标数据库已有数据冲突时(主键/唯一键存在重复等),将覆盖原来的冲突数据。 当数据发生冲突时,针对如下情况,建议选择“忽略”或者“覆盖”,否则建议选择“报错”: 目标数据库存在数据 多对一同步场景 目标数据库手动更新数据 是否过滤DROP DATABASE 实时同步过程中,源数据库端执行的DDL操作在一定程度上会影响数据的同步能力,为了降低同步数据的风险,数据复制服务提供了过滤DDL操作的功能,目前支持默认过滤删除数据库的操作。 是,表示过程中不会同步用户在源数据库端执行的删除数据库的操作。 否,则表示过程中将相关操作同步到目标库。 对象同步范围 对象同步范围支持普通索引和增量DDL同步。您可以根据业务需求选择是否进行同步。 启动位点 步骤2的同步类型选择“增量”时可见,增量同步的启动位点,任务的源库日志从位点后开始获取(不含当前启动位点)。 通过show master status命令获取源库位点,根据提示分别填写File、Position、ExecutedGtidSet(如果未开gtidmode,无需填写ExecutedGtidSet)。 数据同步拓扑 数据同步功能支持多种同步拓扑,您可以根据业务需求规划您的同步实例。数据同步拓扑说明可参考 数据同步拓扑介绍。 增量支持DDL 用户根据需求选择增量同步的DDL类型,不同链路支持的DDL类型以显示为准。 一对一、一对多场景:如果业务上认为源和目标应该使用保持严格一致,那么高危类DDL也应该勾选并同步。如果业务上确定某个高危DDL不应该发生,则可以不勾选同步高危类DDL,这样DRS将拦截过滤这个DDL,从而起到保护目标数据的作用。但需要知晓,过滤DDL的附带问题是可能导致同步失败,例如过滤删列动作。 多对一数据聚合场景:最佳方式是推荐只选择同步加列DDL,其他大部分DDL同步都可能因目标表修改而导致数据不一致或多对一中其他任务失败的情况发生。 同步对象 可选表级同步、库级同步,您可以根据业务场景选择对应的数据进行同步。 选择数据的时候支持搜索,以便您快速选择需要的数据库对象。 如果有切换源数据库的操作,请在选择同步对象前单击右上角 ,以确保待选择的对象为最新源数据库对象。 在同步对象右侧已选对象框中,可以使用对象名映射功能进行源数据库和目标数据库中的同步对象映射,具体操作可参考对象名映射。 步骤 5 在“数据加工”页面,根据需要选择数据加工的方式。 如果不需要数据加工,单击“下一步”。 如果需要数据加工,可选择“数据过滤”、“附加列”或“列加工”,参考 数据加工章节,设置相关规则。 步骤 6 在“预检查”页面,进行同步任务预校验,校验是否可进行。 查看检查结果,如有不通过的检查项,需要修复不通过项后,单击“重新校验”按钮重新进行任务预校验。 预检查完成后,且所有检查项结果均通过时,单击“下一步”。 说明 所有检查项结果均通过时,若存在请确认项,需要阅读并确认详情后才可以继续执行下一步操作。 步骤 7 在“任务确认”页面,设置同步任务的启动时间,并确认同步任务信息无误后,单击“启动任务”,提交同步任务。 表 任务启动设置 参数 描述 :: 启动时间 同步任务的启动时间可以根据业务需求,设置为“立即启动”或“稍后启动”。 说明 预计同步任务启动后,会对源数据库和目标数据库的性能产生影响,建议选择业务低峰期,合理设置同步任务的启动时间。 步骤 8 同步任务提交后,您可在“管理”页面,查看并管理自己的任务。 您可查看任务提交后的状态,状态请参见 任务状态说明。 在任务列表的右上角,单击刷新列表,可查看到最新的任务状态。
        来自:
        帮助文档
        数据库复制
        用户指南
        实时同步
        任务管理
        创建同步任务
      • 接入管理(VPC)
        本文帮助您了解对象存储接入管理( VPC)功能的操作步骤。 操作场景 通过在接入管理(VPC)功能中添加子网,您可以实现同一资源池中的云主机通过内网访问ZOS。 约束与限制 需进行接入管理的资源池 :上海7、南京3、南京5、杭州2、合肥2、九江、广州6、武汉4、福州25、厦门3、郴州2、海口2、北京5、雄安2、石家庄20、内蒙6、晋中、辽阳1、西安5、乌鲁木齐4、乌鲁木齐27、中卫5、兰州2、西宁2、拉萨3、昆明2、重庆2、成都4、贵州3、上海33、宁波边缘云。以上资源池内网默认不互通,故需要通过接入管理配置与对象存储内网互通的云主机所在的VPC和子网。 无需进行接入管理的资源池 :华东1、上海36、南昌5、青岛20、武汉41、长沙42、长沙37、南宁23、北京行业云20、华北2、西南1、上海32。以上资源池云主机默认与对象存储内网互通,无需接入管理即可实现内网访问。 添加子网后,请重启云主机或网卡。 如果没有可用的VPC,需先创建VPC。 操作步骤 1. 点击天翼云门户首页的“控制中心”,输入登录的用户名和密码,进入控制中心页面。 2. 在控制台上方点击,选择地域,以下操作选择广东广州6。 3. 在控制台首页,选择“存储>对象存储”。 4. 在ZOS控制台右上角点击“接入管理(VPC)”。 5. 点击“添加VPC”,选择需要与对象存储内网互通的云主机所在的VPC和子网,点击“确定”。 6. 添加成功后,控制台可查看已经添加过的VPC和子网。 7. 添加VPC和子网后,重启云主机网卡,便可通过内网地址访问ZOS。
        来自:
        帮助文档
        对象存储 ZOS
        控制台指南
        入门操作
        接入管理(VPC)
      • 监控Agent自动退出如何处理
        背景信息 为避免监控服务对您的资源使用造成影响,当监控Agent占用资源超过阈值时,监控Agent将自动退出。本文将介绍当主机监控Agent自动退出时的解决方法。 操作步骤 Linux系统 1. 以root用户登录云主机。 2. 执行以下命令,在dmesg日志中,查看telegraf相关日志。 plaintext dmesg grep telegraf 如果文件dmesg中的日志出现Memory cgroup out of memory字样,则说明资源消耗超过阈值,例如: 3. 在云主机监控Agent服务所在目录/usr/lib/systemd/system/(ubuntu系列发行版 /etc/systemd/system/)中,修改文件telegraf.service中资源限制相关参数。 1. 执行以下命令,修改目录/usr/local/cloudmonitor/localdata中的文件agent.properties。 plaintext cd /usr/lib/systemd/system/ vi telegraf.service 请您根据实际资源占用情况设置资源限制参数,以下数据仅做参考: CPU限制为单核10%。CPUShares1024 内存限制,单位为MB。MemoryLimit200M 2. 按Esc键,输入:wq,再按Enter键,保存并退出文件telegraf.service。 4. 执行以下命令,重新加载云主机监控Agent服务配置文件telegraf.service。 plaintext systemctl daemonreload 5. 执行以下命令,重启云主机监控Agent。 plaintext systemctl restart telegraf
        来自:
        帮助文档
        弹性云主机 ECS
        常见问题
        监控类
        监控Agent自动退出如何处理
      • 与其他服务关系
        介绍分布式消息服务Kafka与天翼云其他服务关系。 虚拟私有云(CTVPC ,Virtual Private Cloud) 虚拟私有云为分布式消息服务Kafka提供一个逻辑隔离的区域,构建一个安全可靠、 可配置和管理的虚拟网络环境。更多信息请参见虚拟私有云。 弹性云主机(CTECS,Elastic Cloud Server) 分布式消息服务Kafka订购后,默认按照用户选择的实例规格开通弹性云主机,云主机由 CPU、内存、镜像、云硬盘组成,同时结合VPC、安全组、数据多副本保存等能力,打造一个既高效又可靠安全的计算环境,确保分布式消息服务Kafka持久稳定运行。更多信息请参见弹性云主机。 云硬盘(CTEVS,Elastic Volume Service) 分布式消息服务Kafka订购后,默认按照用户选择的存储大小开通云硬盘。云硬盘是一种可弹性扩展的块存储设备,可以为分布式消息服务Kafka提供高性能、高可靠的块存储服务。更多信息请参见云硬盘。 弹性IP(Elastic IP,EIP) 弹性IP是可以独立申请的公网 IP 地址,包括公网IP地址与公网出口带宽服务。可以与分布式消息服务Kafka动态绑定和解绑,实现云资源的互联网访问。针对需要公网访问分布式消息服务Kafka实例的需求,用户可开通弹性IP后,在Kafka实例开通页面进行绑定。更多信息请参见弹性IP。
        来自:
        帮助文档
        分布式消息服务Kafka
        产品简介
        与其他服务关系
      • 日志管理类
        操作步骤 步骤 1 登录管理控制台。 步骤 2 单击管理控制台右上角的,选择Region。 步骤 3 在页面左上角单击,选择“数据库 > 云数据库TaurusDB”。 步骤 4 在“实例管理”页面,选择指定的实例,单击实例名称,进入实例的基本信息页面。 步骤 5 在左侧导航栏中选择“参数修改”,在“参数”页签查看参数“logbin”,确认参数值为“ON”,表示binlog已经开启。 步骤 6 在“参数”页签查看参数“binlogexpirelogsseconds”,修改为需要的保留时间,单位是秒。 说明 在新生成一个binlog的文件的时候,数据库会启动清理功能,清理已经超过保留时间的binlog文件。 如果一直未生成新的binlog文件,则历史的binlog文件一直不会被清理,可能会超过保留时间。如果需要立即清理,可以连接数据库执行 flush logs; 强制生成新的binlog文件,此时会触发清理机制。 如何查看TaurusDB数据库的死锁日志 数据库的死锁日志不会记录在错误日志中,您可以通过数据管理服务(Data Admin Service,简称DAS)这款可视化的专业数据库管理工具,快速执行SQL语句查看。 操作步骤 步骤 1 登录管理控制台。 步骤 2 单击管理控制台右上角的,选择Region。 步骤 3 在页面左上角单击,选择“数据库 > 云数据库TaurusDB”。 步骤 4 在“实例管理”页面,选择目标实例,单击操作列的“登录”,进入数据管理服务登录界面。 步骤 5 正确输入数据库用户名和密码,单击“登录”,即可进入您的数据库。 图 登录数据库 步骤 6 选择目标数据库,选择“SQL操作 > SQL查询”,新建一个SQL查询窗口。 步骤 7 查询窗口中使用show engine innodb status 查看当前数据库最新的死锁日志,通过关键字LATEST DETECTED DEADLOCK快速定位,最新产生的死锁日志会覆盖历史死锁日志记录。
        来自:
        帮助文档
        云数据库TaurusDB
        常见问题
        日志管理类
      • 创建路径分析实例
        前提条件 注册天翼云账号,并完成实名认证。具体操作,请参见天翼云账号注册流程。 操作步骤 1. 登录控制中心,进入网络控制台页面。 2. 在控制中心页面左上角选择对应区域,本文我们选择庆阳2。 3. 在左侧导航栏,选择“路径分析”选项。 4. 在路径分析页面,点击右上角的“新建路径分析”按钮。 5. 在新建路径分析页中,根据界面提示,配置路径分析的基本信息,配置参数如表所示 参数 参数说明 路径分析名称 路径分析实例的名称,由数字、字母、中文、、组成,不能以数字、和开头,且长度为232字符 协议 支持选择以下协议: TCP:传输控制协议。 UDP:用户数据报协议。 ICMP:网络控制报文协议。 源端资源 云主机:选择云主机实例ID,及云主机的私网IP地址(目前仅支持选择主网卡的主IPv4地址) 公网IP:输入公网IPv4地址作为路径中的源资源。 源端端口 输入源端资源的端口号,默认端口号为80,端口取值范围165535 目的端资源 云主机:选择云主机实例ID,及云主机的私网IP地址(目前仅支持选择主网卡的主IPv4地址) 公网IP:输入公网IPv4地址作为路径中的源资源。 目的端端口 输入目的端资源的端口号,默认端口号为80,端口取值范围165535 6. 单击“确定”创建完成。
        来自:
        帮助文档
        虚拟私有云 VPC
        路径分析
        创建路径分析实例
      • 文件系统在客户端的挂载目录界面卡死
        本文介绍在客户端的挂载目录页面卡死的情况下如何进行处理。 故障现象 客户端中文件系统的挂载目录页面卡死,无法执行其它命令。 可能原因 文件系统在未卸载的情况下,进行了退订/删除或解绑VPC操作,导致网络中断。 解决方法 1. 在客户端新开一个窗口。须以root用户登录云主机,参考登录Linux弹性云主机弹性云主机快速入门 天翼云, 1. 如果使用云主机控制台“远程登录”,可以在右上角“发送远程命令”中点击“Ctrl+Alt+F3”新开一个窗口登录。 2. 如果使用Xshell等工具登录,可以在当前会话右键选择“复制SSH渠道”新开一个命令窗口。 2. 执行以下命令强制卸载挂载目录。 plaintext umount f [挂载目录] 如: plaintext umount f /mnt 3. 可尝试多次执行,如果多次执行仍无法卸载掉挂载目录,请尝试重启计算服务。 4. 如果需要重新挂载文件系统,请确认在文件系统中添加上与计算服务相同VPC后,重新执行挂载操作。 参考挂载NFS文件系统到弹性云主机 (Linux)弹性文件服务快速入门挂载文件系统 天翼云。
        来自:
        帮助文档
        弹性文件服务 SFS
        故障修复
        文件系统在客户端的挂载目录界面卡死
      • 修改备份任务
        本章主要介绍翼MapReduce的修改备份任务功能。 操作场景 系统管理员可以通过FusionInsight Manager修改已创建的备份任务的配置参数,以适应业务需求的变化。不支持修改任何恢复任务配置参数,只能查看恢复任务的配置参数。 对系统的影响 修改备份任务后,新的参数在下一次执行任务时生效。 前提条件 已创建备份任务。 已根据业务实际需求,规划新的备份任务策略。 操作步骤 1.在FusionInsight Manager,选择“运维 > 备份恢复 > 备份管理”。 2.在任务列表指定任务的“操作”列,单击“配置”,打开修改配置页面。 在新页面中修改任务参数,支持修改的主要参数项如下: 开始时间 周期 目的端NameService名称 目的端NameNode IP地址 目的端路径 最大备份数 最大恢复点个数 最大map数 单个map的最大带宽 说明 修改某个备份任务参数“目的端路径”后,第一次执行此任务默认为全量备份。 3.单击“确定”保存。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        备份恢复管理
        修改备份任务
      • 产品搭配使用
        相关服务 交互功能 弹性云服务器(ECS) RDSPostgreSQL配合弹性云服务器 (Elastic Cloud Server,简称ECS)一起使用,通过内网连接RDSPostgreSQL可以有效地降低应用响应时间、节省公网流量费用。 虚拟私有云(VPC) 对您的RDSPostgreSQL实例进行网络隔离和访问控制。 弹性IP(EIP) 为您的实例提供公网访问方式。 数据迁移工具(DTS) 使用数据复制服务,实现数据库平滑迁移上云。 数据库管理工具(DAS) 使用数据管理服务,通过专业优质的可视化操作界面,提高数据管理工作的效率和安全。 数据库专家服务 专家团队为您提供数据库安装部署、健康巡检、应急响应、性能调优、架构规划设计、数据迁移咨询、备份恢复咨询等各类数据库专业服务,解决数据库各类问题,为您的数据库系统保驾护航。
        来自:
        帮助文档
        关系数据库PostgreSQL版
        产品介绍
        产品搭配使用
      • 连接SQL Server实例
        连接方式 IP地址 使用场景 说明 内网连接 内网IP地址 系统默认提供内网IP地址。当部署应用的弹性云主机,与SQL Server实例处于同一区域的同一VPC内时,建议使用内网IP连接弹性云主机与SQL Server实例。 安全性高,可较好地实现SQL Server的性能。推荐使用内网连接。 公网连接 弹性公网IP 不能通过内网IP地址访问SQL Server实例时,使用公网访问。建议单独绑定弹性公网IP,实现弹性云主机(或公网主机)与SQL Server实例间的连接。 安全性较低。为了获得更快的传输速率和更高的安全性,建议您将应用迁移到与您的SQL Server实例在同一VPC内,使用内网连接。
        来自:
        帮助文档
        关系数据库SQL Server版
        用户指南
        连接数据库
        连接SQL Server实例
      • 与其他服务之间的关系
        本章节主要介绍云搜索服务与其他服务的关系。 虚拟私有云(Virtual Private Cloud,简称VPC) 云搜索服务的集群创建在虚拟私有云(VPC)的子网内,VPC通过逻辑方式进行网络隔离,为用户的集群提供安全、隔离的网络环境。 弹性云主机(Elastic Cloud Server,简称ECS) 云搜索服务的集群中每个节点为一台弹性云主机(ECS)。创建集群时将自动创建弹性云主机作为节点。 云硬盘(Elastic Volume Service,简称EVS) 云搜索服务使用云硬盘(EVS)存储索引数据。创建集群时,将自动创建云硬盘用于集群存储。 对象存储服务(Object Storage Service,简称OBS) 云搜索服务的集群快照存储在对象存储服务(OBS)的桶中。 统一身份认证服务(Identity and Access Management,简称IAM) 云搜索服务使用统一身份认证服务(IAM)进行鉴权。 云监控服务(Cloud Eye) 云搜索服务使用云监控服务实时监测集群的指标信息,保障服务正常运行。云搜索服务当前支持的监控指标为磁盘使用率和集群健康状态。用户通过磁盘使用率指标可以及时了解集群的磁盘使用情况。通过集群健康状态指标,用户可以了解集群的健康状态。 云审计服务(Cloud Trace Service,简称CTS) 云审计服务(CTS)可以记录与云搜索服务相关的操作事件,便于日后的查询、审计和回溯。
        来自:
        帮助文档
        云搜索服务
        产品简介
        与其他服务之间的关系
      • 约束与限制
        本文介绍了企业交换机服务的配额与使用限制。 配额 表企业交换机配额限制 规格项 默认配额 申请更多配额 每个租户支持创建的企业交换机数量 5个 请提交工单申请更多配额 每个企业交换机支持绑定的VPC数量 1个 不支持修改 每个子网支持连通的二层连接数量 1个 不支持修改 每个“小型”企业交换机支持建立的二层连接数量 1个 不支持修改 每个“中型”企业交换机支持建立的二层连接数量 3个 不支持修改 每个“大型”企业交换机支持建立的二层连接数量 6个 不支持修改 使用限制 不支持云下往云上转发未知单播、广播、组播(除VRRP协议外)的IP报文。 除广州4资源池外,其他资源池暂不支持云下服务器访问云上的高级网络功能,如VPC对等连接、VPC路由表、ELB以及NAT网关等。 对于使用云专线(DC)对接企业交换机的场景,请您先提交工单给云专线服务,确认您的云专线是否支持和企业交换机进行VXLAN对接,若不支持,需要联系客服开通云专线的对接企业交换机能力。 对于使用虚拟专用网络(VPN)对接企业交换机的场景,请您先提交工单给虚拟专用网络服务,确认您的虚拟专用网络是否支持和企业交换机进行VXLAN对接,若不支持,需要联系客服开通虚拟专用网络的对接企业交换机能力。 每个企业交换机最多支持10000个IP二层互通(即包含通过该企业交换机打通的所有二层网段IP),且最多同时支持连接1000个云下二层网段IP。 ESW支持MAC Proxy转发能力,通过ARP报文代理,使云上和云下主机相互不可见对端的实际MAC地址。在业务报文转发时,云上主机收到的云下报文源MAC是二层连接主接口的MAC,云下主机收到的云上报文源MAC是实例隧道口的MAC。如果您的业务场景需要感知实际主机MAC或者有基于MAC的安全策略等,不支持使用ESW。 通常,服务器端会通过ARP学习确定回复报文的目的MAC地址,但是某些主机或硬件设备(如F5负载均衡器)配置了原路径返回能力,回复报文的目的MAC地址取自请求报文的源MAC地址,当通过ESW实现云上云下三层访问场景时,可能会出现网络不通问题,请提前排查。 例如,先通过ESW打通云上和云下192.168.3.0/24网段,当云上主机192.168.2.2/24需要跨网段访问云下主机192.168.3.3/24时,云上请求报文会先通过VPC路由,再经过ESW送往云下主机,云下对应回复报文走路由发回云上,可以经过云专线/VPN。如果云下主机配置了原路径返回,云下回复报文的目的MAC地址不是192.168.3.0/24的网关MAC地址,是取对应请求报文的源MAC地址,即ESW的MAC地址。这样云下回复报文的目的MAC地址错误,导致网络不通。 ESW使用VXLAN协议时,VXLAN协议头占用50个字节,报文长度会增加。请您确保VXLAN报文经过的线下网络设备支持大帧(Jumbo Frames,即MTU大于1500字节的以太网帧)通过,否则会导致大包不通。 说明 不同设备厂商处理大帧的方式不同,其中部分厂商默认大帧放通,例如华为。部分厂商默认大帧不放通,例如思科。 如果您的IDC需要与云上企业交换机对接来建立云下和云上二层网络通信,那么您IDC侧的交换机需要支持VXLAN功能,客户侧负责建设IDC机房的VXLAN网络,包括VXLAN交换机准备、物理网络连通、对接云专线或者虚拟专用网络等。
        来自:
        帮助文档
        企业交换机
        产品介绍
        约束与限制
      • 查看监控概览
        监控概览为您提供云主机监控、资源告警总览及告警历史概览等信息,帮助您快速了解各云服务资源的使用和告警情况。 操作场景 通过监控概览页面,您可以在资源告警总览模块查看告警资源数、资源总数;您可以在云主机监控模块查看云主机的CPU使用率Top5、内存使用率Top5等内容;您可以在告警历史模块查看6小时、24小时、7天三个时间段的告警历史内容。 前提条件 注册天翼云账号,并完成实名认证。具体操作,请参见天翼云账号注册流程。 您已经完成云资源的创建。 说明 监控概览功能当前为受限开放阶段,仅支持部分资源池,如有需要可以联系客户经理提单开通。 操作步骤 1. 登录控制中心。 2. 在控制中心页面左上角点击,选择区域,本文我们选择华东1。 3. 依次选择“管理与部署”,单击“云监控”,进入监控概览页面。 4. 单击“监控概览”,即可进入监控概览界面并查看。监控概率页面主要由资源告警总览、云主机监控、告警历史等组成。
        来自:
        帮助文档
        云监控服务
        快速入门
        查看监控概览
      • 计费项及其计费方式
        本文介绍弹性云主机的计费项和计费方式。 一台云主机实例包括计算资源(vCPU和内存)、镜像、云硬盘等资源,其中涉及计费的资源如下表所示。 资源类型 计费说明 计费方式 计算资源(vCPU和内存) 以实例规格的形式提供计算资源,包括vCPU和内存,收取实例规格费用。 包年包月计费说明,按量付费计费说明 包年/包月、按量计费 镜像 镜像当前分为公共镜像、私有镜像、共享镜像与安全产品镜像。 镜像服务计费说明 根据镜像类型及使用情况决定 云硬盘 针对不同云硬盘类型与容量计费。购买云主机实例时会默认购买40GiB的系统盘,用户可以根据需要调整该容量。 云硬盘计费说明 包年/包月、按量计费 弹性IP 如有互联网访问需求,您需要购买弹性公网IP。弹性IP可根据带宽、流量进行计费。 弹性IP计费说明 按带宽包年包月、按带宽按量付费、按实际流量付费 关于试用、代金券的相关规则请参考:试用规则、代金券使用。
        来自:
        帮助文档
        弹性云主机 ECS
        购买指南
        计费说明
        计费项及其计费方式
      • 从回收站销毁云硬盘
        本文为您介绍如何从回收站销毁云硬盘。 操作场景 用户可以选择两种方式对回收站中的云硬盘进行销毁: 等待7天之后,回收站到期自动销毁。 用户进行手动销毁,不必等到回收站到期后系统销毁。 本文将详细介绍用户手动销毁云硬盘操作。 约束与限制 销毁云硬盘后,云硬盘中的数据将无法找回,请谨慎操作。 说明 若云硬盘中有重要的数据,建议您在将其删除进入回收站前就对其进行备份。 操作步骤 1. 登录控制中心。 2. 单击控制中心左上角的,选择地域,此处我们选择华东1。 3. 单击“存储>云硬盘”,进入云硬盘主页面。 4. 在云硬盘主页面,单击“回收站”页签,进入回收站控制台。 5. 单击待销毁云硬盘所在行的“操作>销毁”按钮。 6. 此外,您还可以选中云硬盘左侧的复选框,点击“销毁”按钮,批量销毁云硬盘。 7. 通过以上两种方式销毁云硬盘后,弹出确认框,确认后,云硬盘就从回收站列表中消失,代表已经销毁成功。
        来自:
        帮助文档
        云硬盘 EVS
        用户指南
        云硬盘回收站
        从回收站销毁云硬盘
      • 计费购买类
        云安全中心实例到期后,数据还会保留吗? 购买的云安全中心实例到期后如未按时续费,公有云平台会提供一定的保留期。 保留期内,平台会冻结云安全中心的服务,用户配置的各类数据会继续生效,但用户无法访问云安全中心。 保留期满,用户若仍未续费,平台会清除实例资源,用户原有的配置信息将会被删除,同时云安全中心将不再获取第三方日志、用户云上资产等信息。 云安全中心实例可以降低规格吗? 云安全中心实例不支持降级,同时已绑定的扩展资源也不支持单独退订。如您需要降低当前规格,你可以先退订当前的云安全中心实例,再重新购买云安全中心实例。 云安全中心是否支持自动续订? 支持。 您可以在购买套餐的同时勾选自动续订,同时也支持在使用过程中,在订单中心中设置自动续订。 云安全中心存在规格差异吗? 当前云安全中心只有一个标准版,标准版的服务如下所示。 版本 即时通知服务 日志分析量 标准版 10000条/月 50G/月 云安全中心有哪些扩展服务可以购买? 云安全中心支持2种类型的扩展资源,用户可支持根据实际使用需求购买日志分析量扩展资源和态势大屏扩展资源。其中,态势大屏扩展资源只可购买一次,日志分析量扩展资源的购买资源最小单位为50G,即扩展资源需要购买50G的整数倍。
        来自:
        帮助文档
        云安全中心
        常见问题
        计费购买类
      • 绑定弹性网卡到弹性公网IP
        本文主要介绍如何绑定弹性网卡到弹性公网IP。 操作场景 通过将弹性公网IP与弹性网卡绑定,您可以构建更灵活,扩展性更强的IT解决方案。 弹性网卡本身提供一个私网IP,与弹性公网IP绑定后,相当于同时具备了私网IP和公网IP。弹性网卡和弹性公网IP的绑定关系不随弹性网卡解绑云主机而变化,当弹性网卡从云主机上迁移时,即可同时完成私网IP和公网IP的迁移。 一个云主机可以绑定多个弹性网卡,当为每个弹性网卡分别绑定一个弹性公网IP时,这个云主机就拥有了多个弹性公网IP,可以提供更灵活的外部访问服务。 操作步骤 1. 登录管理控制台。 2. 在页面左上角单击图标,打开服务列表,选择“网络 > 虚拟私有云”。进入虚拟私有云列表页面。 3. 在左侧导航栏选择“弹性网卡”。 4. 在弹性网卡列表页,单击操作列的“绑定弹性公网IP”,选择需要绑定的弹性公网IP。 5. 单击“确定”,完成绑定。 约束与限制 扩展弹性网卡与弹性IP绑定将受弹性IP相关配额限制,具体可参看弹性IP服务约束与限制内容。
        来自:
        帮助文档
        虚拟私有云 VPC
        用户指南
        弹性网卡和辅助弹性网卡
        弹性网卡
        绑定弹性网卡到弹性公网IP
      • 安装VirtIO驱动、QEMU-Guest-Agent
        本文档为制作Windows系统私有镜像指导手册的步骤2,安装VirtIO驱动、QEMU Guest Agent。 操作场景 VirtIO驱动,用于弹性云主机识别云硬盘等存储设备,是Windows镜像必备驱动。 QEMU Guest Agent(简称qga),是天翼云平台弹性云主机执行关键功能的依赖工具。包括: 云主机重置密码 创建云主机快照 操作步骤 安装VirtIO和QEMU Guest Agent 说明 Windows虚拟机安装完成后,请检查VirtIO对应的CD驱动器下的文件。 如果CD驱动器主目录下存在virtiowinguesttools.exe文件,请直接执行此文件,按默认操作步骤执行,即可完成VirtIO驱动和QEMU Guest Agent的安装; 如果CD驱动器主目录下不存在virtiowinguesttools.exe文件,请执行主目录下的virtiowingtx64.msi文件安装VirtIO驱动,并运行/guestagent/qemugax8664.exe文件安装QEMU Guest Agent。安装过程中,请按默认操作步骤执行。 注意 如果您未按照 配置VirtIO和QEMU Guest Agent 打开PowerShell,将以下内容直接复制粘贴并执行。 StartService Name 'QEMU Guest Agent VSS Provider' StartService Name 'QEMUGA' SetService Name 'QEMU Guest Agent VSS Provider' StartupType Automatic SetService Name 'QEMUGA' StartupType Automatic
        来自:
        帮助文档
        镜像服务 IMS
        用户指南
        私有镜像
        创建私有镜像
        制作Windows系统盘镜像文件
        安装VirtIO驱动、QEMU-Guest-Agent
      • 安全设置
        为用户绑定USBKey认证方式 1. 使用“管理角色”账号登录云堡垒机。 2. 在左侧导航栏选择“用户管理 > 用户”,进入“用户”模块。 3. 选择需要绑定USBKey认证方式的用户,单击“操作”列的“更多 > 绑定证书”。 4. 输入证书名称,并且在“证书”模块填入生成的证书。 Web证书配置 您可以自行上传证书至云堡垒机。 说明 目前仅支持上传国际标准证书,暂不支持国密标准。 1. 将“证书绑定”开关调整至,即可在右侧弹出的对话框中绑定证书。 2. 根据提示完成证书相关内容输入。 3. 填写完成后,单击“确认”即开始证书校验,证书校验通过后会出现下图提示。 4. 绑定完成后,会在控制台显示证书相关信息。 资产账号配置 您可以根据合规要求,配置是否允许保存访问角色的密码。 将“访问角色记住密码”开关调整至,即可不允许保存访问角色的密码。
        来自:
        帮助文档
        云堡垒机(原生版)
        用户指南
        管理员手册
        系统管理
        安全设置
      • 如何清理云搜索服务搜索引擎的缓存?
        原因分析 缓存用于加速查询操作,云搜索服务会将常见的查询结果或热数据缓存在内存中,但在某些情况下,缓存可能需要手动清理,例如缓存命中率下降或内存占用过高时。 解决方案 1. 清理字段数据缓存: 字段数据缓存用于存储字段值,可以通过以下命令清理字段缓存: POST /cache/clear?fielddatatrue 2. 清理查询缓存: 查询缓存用于缓存查询结果,可以通过以下命令清理查询缓存: POST /cache/clear?querytrue 3. 清理整个缓存: 如果希望清理所有缓存,包括字段数据缓存、查询缓存和请求缓存,可以使用: POST /cache/clear 4. 监控缓存使用: 定期监控缓存使用情况,避免缓存过度占用内存。例如,使用以下命令查看缓存统计信息: GET /nodes/stats/indices/fielddata?human
        来自:
        帮助文档
        云搜索服务
        常见问题
        问题排查类
        云搜索实例使用类
        如何清理云搜索服务搜索引擎的缓存?
      • Node.js Redis客户端
        本章介绍使用同一VPC内弹性云主机ECS上的Node.js Redis客户端连接Redis实例的方法。 介绍使用同一VPC内弹性云主机ECS上的Node.js Redis客户端连接Redis实例的方法。更多的客户端的使用方法请参考Redis客户端。 说明 本章节操作,仅适用于连接单机、主备、Proxy集群实例,如果是使用Node.js Redis客户端连接Cluster集群,请参考NodeJs Redis客户端使用。 前提条件 已成功申请Redis实例,且状态为“运行中”。 已创建弹性云主机,创建弹性云主机的方法,请参见《弹性云主机用户指南》。 如果弹性云主机为Linux系统,该弹性云主机必须已经安装gcc编译环境。 操作步骤 客户端服务器为Ubuntu(debian系列) 步骤 1 查看并获取待连接Redis实例的IP地址和端口。 具体步骤请参见查看实例信息。 步骤 2 登录弹性云主机。 步骤 3 安装Node.js。 apt install nodejslegacy 如果以上命令安装不了,备选方式如下: wget nocheckcertificate tar xvf nodev4.28.5.tar.gz cd nodev4.28.5 ./configure make make install 说明 安装完成后,可执行node version查看Node.js的版本号,确认Node.js已安装成功。 步骤 4 安装js包管理工具npm。 apt install npm 步骤 5 安装NodeJs redis客户端ioredis。 npm install ioredis 步骤 6 编辑连接Redis实例的示例脚本。 编辑连接示例脚本ioredisdemo.js。示例脚本中增加以下内容,包括连接以及数据读取。 var Redis require('ioredis'); var redis new Redis({ port: 6379, // Redis port host: '192.168.0.196', // Redis host family: 4, // 4 (IPv4) or 6 (IPv6) password: '', db: 0 }); redis.set('foo', 'bar'); redis.get('foo', function (err, result) { console.log(result); }); // Or using a promise if the last argument isn't a function redis.get('foo').then(function (result) { console.log(result); }); // Arguments to commands are flattened, so the following are the same: redis.sadd('set', 1, 3, 5, 7); redis.sadd('set', [1, 3, 5, 7]); // All arguments are passed directly to the redis server: redis.set('key', 100, 'EX', 10); 其中,host 为Redis实例的IP地址,port为Redis实例的端口。IP地址和端口获取见步骤1,请按实际情况修改后执行。 为创建Redis实例时自定义的密码,请按实际情况修改后执行。 步骤 7 运行示例脚本,连接Redis实例。 node ioredisdemo.js
        来自:
        帮助文档
        分布式缓存服务Redis版
        快速入门
        连接实例
        多语言连接
        Node.js Redis客户端
      • 实例生命周期
        状态 状态类型 说明 创建中 中间状态 创建实例之后在实例开通完成之前的中间状态,创建完成后该实例会变为“运行中”。 运行中 稳定状态 实例正常运行状态,用户可正常运行相关业务。 停止中 中间状态 对处于“运行中”状态的实例执行关机操作后的中间状态,关机完成后该实例变为“关机”。 节省关机中 中间状态 对处于“运行中”状态的实例执行节省关机操作后的中间状态,关机完成后该实例变为“节省关机”。 关机 稳定状态 操作实例关机,经过“停止中”到达的稳定状态。在“关机”状态下的实例,不能对外提供服务。 节省关机 稳定状态 操作实例节省关机,经过“节省关机中”到达的稳定状态。在“节省关机”状态下的实例,不能对外提供服务。 启动中 中间状态 对处于“关机”状态的实例执行开机操作后的中间状态,启动完成后该实例变为“运行中”。 重启中 中间状态 对处于“运行中”状态的实例执行重启操作后的中间状态,重启完成后该实例变为“运行中”。 变配中 中间状态 对实例执行变配操作后的中间状态,变配成功后会置为执行变配前原本的状态。 重建中 中间状态 对处于“关机”状态的实例执行“一键重装”后的中间状态,该状态为实例执行重装操作系统的过程。重装完成后该实例会变为“关机”。 删除中 中间状态 实例处于正在被删除的状态,用户删除成功将会收到退订短信。 已删除 稳定状态 已删除的实例将从控制台列表显示中移除。此状态不在控制台展示。 已冻结 稳定状态 订购按需计费模式的实例,账号欠费后,云主机进入该状态。完成账号续费后,该状态解除。 已到期 稳定状态 订购包周期计费模式的实例,到期后进入该状态。续订实例后,该状态解除。 错误 稳定状态 在上述任何操作中导致云主机出现错误,则会置为error。 此时可以通过两种方式解决问题: 方式一,请参考帮助文档中 包周期退订中 中间状态 控制台对包年包月计费模式的云主机实例执行退订操作后的中间状态,退订完成后该实例变状态为“包周期已退订”。 包周期已退订 稳定状态 订购包周期计费模式的云主机实例,手动退订后,云主机进入该状态。
        来自:
        帮助文档
        弹性云主机 ECS
        用户指南
        云主机实例
        实例生命周期
      • 弹性网卡简介
        本文主要介绍弹性网卡简介。 弹性网卡(Elastic Network Interfaces,以下简称ENI)即虚拟网卡,您可以通过创建并配置弹性网卡,并将其附加到您的云主机实例(包括弹性云主机和物理机)上,实现灵活、高可用的网络方案配置。 说明 弹性网卡功能支持区域: 华北华北,广东广州4,北京北京2,江苏苏州,陕西西安2,上海上海4,贵州贵州 弹性网卡类型 主弹性网卡:在创建实例时,随实例默认创建的弹性网卡称作主弹性网卡。无法解除主弹性网卡和实例的绑定关系。 扩展弹性网卡:您在弹性网卡控制台创建的是扩展弹性网卡,可以将网卡绑定到实例上,也可以解除网卡和实例的绑定关系。 应用场景 灵活迁移 通过将弹性网卡从云主机实例解绑后再绑定到另外一台云主机实例,保留已绑定私网IP、弹性公网IP和安全组策略,无需重新配置关联关系,将故障实例上的业务流量快速迁移到备用实例,实现服务快速恢复。 业务分离管理 可以为服务器实例配置多个分属于同一VPC内不同子网的弹性网卡,特定网卡分别承载云主机实例的内网、外网、管理网流量。针对子网可独立设置访问安全控制策略与路由策略,弹性网卡也可配置独立安全组策略,从而实现网络隔离与业务流量分离。
        来自:
        帮助文档
        虚拟私有云 VPC
        用户指南
        弹性网卡和辅助弹性网卡
        弹性网卡
        弹性网卡简介
      • 通过应用程序连接MySQL实例
        参数 说明 host MySQL实例的内网地址或外网地址。 1、内网地址:当应用部署在弹性云主机上,且该弹性云主机与MySQL实例处于同一区域,同一VPC时,建议单独使用内网IP连接弹性云主机与MySQL实例。 2、外网地址:其他情况均使用外网地址。 port 根据您使用的连接地址选择对应的端口。 yourDatabase 所连接的数据库名称。 yourUserName 所访问MySQL实例的账号名称。 yourPassword 所访问MySQL实例的账号对应的密码
        来自:
        帮助文档
        关系数据库MySQL版
        快速入门
        实例连接方式介绍
        通过应用程序连接MySQL实例
      • DeepSeek专题导航
        图解:DeepSeek与公有云深度融合 从基础设施到智能中枢:DeepSeek如何重塑公有云服务价值链 高性能GPU云主机助力DeepSeek深度应用 天翼云SDWAN与DeepSeek超强联动,开启云上高效互联新时代 实践指南:DeepSeek驱动高效能云生态 GPU云主机/弹性云主机:零基础搭建DeepSeek云端环境指南 GPU物理机:物理机搭建DeepSeek指南 SDWAN跨境:SDWAN助力DeepSeek模型定向加速 智算容器:云容器引擎与DeepSeek融合实践 函数计算:天翼云函数计算与DeepSeek大模型 Q&A:典型问题解析与策略应对 常见问题解答
        来自:
        帮助文档
        物理机 DPS
        DeepSeek专题
        DeepSeek专题导航
      • SQL明细
        本文介绍数据库管理服务为云数据库提供数据库审计功能,帮助您追溯历史所有数据库操作记录,满足您的安全审计需求。 前提条件 用户已录入MySQL、DDS、PostgreSQL与SQL Server类型的云数据库实例。 MySQL、PostgreSQL、SQL Server数据库资源池支持:西南1、华东1、上海36、华北2、长沙42、华南2、青岛20、南昌5、西安7、杭州7。 DDS数据库资源池支持:华东1、上海36、西南1、华北2、华南2。 用户已经开启了数据库审计,详见:开启数据库审计。 操作步骤 1. 登录数据库管理服务。 2. 在左侧菜单栏依次点击SQL治理 > SQL审计,进入SQL审计明细界面。 注意事项 SQL审计明细的日志记录默认只保存1天,可设置范围为1~3天。若需要更改最长保存时间(最长支持180天)请联系客户经理评估调整。 仅超级管理员、系统管理员和审计管理员可以进入SQL审计日志界面。 MySQL审计日志中影响行数、返回行数、扫描行数、执行耗时、锁等待时间若无法查看则为历史版本,有需要请联系数据库内核升级版本即可。 若DDS不支持数据库审计,需先升级数据库内核版本。 功能介绍 SQL审计的日志记录了历史所有数据库操作记录,您需要先选择查看的时间范围和实例,点击查询按钮即可查看。 SQL审计明细日志搜索 SQL审计日志支持多个维度的联合搜索,不同数据库类型搜索项存在差异,常见搜索项说明如下 搜索项 说明 时间范围 选择查询的时间范围 数据库类型 选择DMS支持的数据库类型,必填 实例 实例名称,必填 节点IP 数据库实例节点IP,必填 数据库名 实例中数据库名称,可使用通配符%,指代任意长度字符 SQL执行类型 选择SQL语句的类型 SQL文本 SQL语句文本,大小写不敏感,可使用通配符%,指代任意长度字符 按时间排序 是否将查询结果按照时间排序,开启后将严重影响查询性能,建议关闭 数据库账号 大小写不敏感,可使用通配符%,指代任意长度字符 客户端IP 客户端IP地址,可使用通配符%,指代任意长度字符 SQL执行结果 SQL执行是否成功 注意 由于MySQL审计日志数据量较大,搜索的时间范围跨度仅限1天。
        来自:
        帮助文档
        数据管理服务
        用户指南
        SQL治理
        SQL审计
        SQL明细
      • Java调用示例
        1. com.ffcs.ebp.ebpsdk.common.Response java package com.ffcs.ebp.ebpsdk.common; import java.util.Map; public class Response { private int statusCode; private String body; private Map headers; public int getStatusCode() { return statusCode; } public void setStatusCode(int statusCode) { this.statusCode statusCode; } public String getBody() { return body; } public void setBody(String body) { this.body body; } public Map getHeaders() { return headers; } public void setHeaders(Map headers) { this.headers headers; } } 2. com.ffcs.ebp.ebpsdk.YunSign java package com.ffcs.ebp.ebpsdk; import com.ffcs.ebp.ebpsdk.common.Response; import org.apache.commons.lang.StringUtils; import org.apache.http.Header; import org.apache.http.HttpEntity; import org.apache.http.client.config.AuthSchemes; import org.apache.http.client.config.CookieSpecs; import org.apache.http.client.config.RequestConfig; import org.apache.http.client.methods.; import org.apache.http.config.Registry; import org.apache.http.config.RegistryBuilder; import org.apache.http.conn.socket.ConnectionSocketFactory; import org.apache.http.conn.socket.PlainConnectionSocketFactory; import org.apache.http.conn.ssl.NoopHostnameVerifier; import org.apache.http.conn.ssl.SSLConnectionSocketFactory; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import org.apache.http.util.EntityUtils; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; import java.io.; import java.net.URLEncoder; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.security.KeyManagementException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.cert.X509Certificate; import java.text.SimpleDateFormat; import java.util.; public class YunSign { private String url; private String body; private String ak; private String sk; private String uuId; private int temp; private String contentType; private String queryStr; private Map headerMap; private String afterQuery; public YunSign(String url, String ak, String sk, String uuId, String body, int temp, String contentType, String queryStr, Map headerMap) { this.url url; if(body.equals("{}")){ body ""; } this.body body; this.ak ak; this.sk sk; this.uuId uuId; this.temp temp; this.contentType contentType; this.queryStr queryStr; this.headerMap headerMap; } public Response toDo(String method, int connectTimeout, int connectionRequestTimeout, int socketTimeout) { Response response null; method method.toUpperCase(); switch (method) { case "POST": response doPost(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "GET": if (StringUtils.isNotEmpty(this.body)) { response sendJsonByGetReq(connectTimeout, connectionRequestTimeout, socketTimeout); } else { response doGet(connectTimeout, connectionRequestTimeout, socketTimeout); } break; case "DELETE": if (StringUtils.isNotEmpty(this.body)) { response sendJsonByDeleteReq(connectTimeout, connectionRequestTimeout, socketTimeout); } else { response doDelete(connectTimeout, connectionRequestTimeout, socketTimeout); } break; case "PUT": response doPut(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "PATCH": response doPatch(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "HEAD": response doHead(connectTimeout, connectionRequestTimeout, socketTimeout); break; } return response; } private String getSign(Date eopDate) { String calculateContentHash getSHA256(body); //报文原封不动进行sha256摘要 // System.out.println("calculateContentHash:" + calculateContentHash); SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); SimpleDateFormat DATEFORMATTER new SimpleDateFormat("yyyyMMdd"); String singerDate TIMEFORMATTER.format(eopDate); String singerDd DATEFORMATTER.format(eopDate); //header的key按照26字母进行排序, 以&作为连接符连起来 try { String CampmocalHeader String.format("ctyuneoprequestid:%sneopdate:%sn", this.uuId, singerDate); String sigture CampmocalHeader + "n" + this.afterQuery + "n" + calculateContentHash; // System.out.println("sigture:" + sigture); byte[] ktime HmacSHA256(singerDate.getBytes(), sk.getBytes()); // System.out.println("ktime:" + HexUtils.bytes2Hex(ktime)); byte[] kAk HmacSHA256(ak.getBytes(), ktime); // System.out.println("kAk:" + HexUtils.bytes2Hex(kAk)); byte[] kdate HmacSHA256(singerDd.getBytes(), kAk); // System.out.println("kdate:" + HexUtils.bytes2Hex(kdate)); String Signature Base64.getEncoder().encodeToString(HmacSHA256(sigture.getBytes("UTF8"), kdate)); // System.out.println("Signature:" + Signature); String signHeader String.format("%s Headersctyuneoprequestid;eopdate Signature%s", ak, Signature); // System.out.println("signHeader:" + signHeader); return signHeader; } catch (Exception e) { e.printStackTrace(); } return null; } / 在调用SSL之前需要重写验证方法,取消检测SSL 创建ConnectionManager,添加Connection配置信息 @return HttpClient 支持https / private static CloseableHttpClient sslClient() { try { // 在调用SSL之前需要重写验证方法,取消检测SSL X509TrustManager trustManager new X509TrustManager() { @Override public X509Certificate[] getAcceptedIssuers() { return null; } @Override public void checkClientTrusted(X509Certificate[] xcs, String str) { } @Override public void checkServerTrusted(X509Certificate[] xcs, String str) { } }; SSLContext ctx SSLContext.getInstance(SSLConnectionSocketFactory.TLS); ctx.init(null, new TrustManager[]{trustManager}, null); SSLConnectionSocketFactory socketFactory new SSLConnectionSocketFactory(ctx, NoopHostnameVerifier.INSTANCE); // 创建Registry RequestConfig requestConfig RequestConfig.custom().setCookieSpec(CookieSpecs.STANDARDSTRICT) .setExpectContinueEnabled(Boolean.TRUE).setTargetPreferredAuthSchemes(Arrays.asList(AuthSchemes.NTLM, AuthSchemes.DIGEST)) .setProxyPreferredAuthSchemes(Arrays.asList(AuthSchemes.BASIC)).build(); Registry socketFactoryRegistry RegistryBuilder. create() .register("http", PlainConnectionSocketFactory.INSTANCE) .register("https", socketFactory).build(); // 创建ConnectionManager,添加Connection配置信息 PoolingHttpClientConnectionManager connectionManager new PoolingHttpClientConnectionManager(socketFactoryRegistry); CloseableHttpClient closeableHttpClient HttpClients.custom().setConnectionManager(connectionManager) .setDefaultRequestConfig(requestConfig).build(); return closeableHttpClient; } catch (KeyManagementException ex) { throw new RuntimeException(ex); } catch (NoSuchAlgorithmException ex) { throw new RuntimeException(ex); } } public Response doGet(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); //创建HttpGet远程连接实例 HttpGet httpGet; if (StringUtils.isNotEmpty(this.afterQuery)) { httpGet new HttpGet(this.url + "?" + this.afterQuery); } else { httpGet new HttpGet(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpGet.setHeader("ContentType", this.contentType); httpGet.setHeader("ctyuneoprequestid", this.uuId); httpGet.setHeader("EopAuthorization", getSign(eopDate)); httpGet.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpGet.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpGet.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 httpGet.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(httpGet); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response sendJsonByGetReq(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { Response result new Response(); CloseableHttpClient client null; CloseableHttpResponse response null; try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL client sslClient(); } else { client HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpGetWithEntity远程连接实例 HttpGetWithEntity httpGetWithEntity; if (StringUtils.isNotEmpty(this.afterQuery)) { httpGetWithEntity new HttpGetWithEntity(this.url + "?" + this.afterQuery); } else { httpGetWithEntity new HttpGetWithEntity(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为HttpGetWithEntity实例设置配置 httpGetWithEntity.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpGetWithEntity.setHeader("ContentType", this.contentType); httpGetWithEntity.setHeader("ctyuneoprequestid", this.uuId); httpGetWithEntity.setHeader("EopAuthorization", getSign(eopDate)); httpGetWithEntity.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpGetWithEntity.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpGetWithEntity.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); HttpEntity httpEntity new StringEntity(body, Charset.forName("UTF8")); httpGetWithEntity.setEntity(httpEntity); //执行请求操作,并拿到结果(同步阻塞) response client.execute(httpGetWithEntity); //获取结果实体 HttpEntity entity response.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! client) { try { client.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPost(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpPost远程连接实例 HttpPost httpPost; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPost new HttpPost(this.url + "?" + this.afterQuery); } else { httpPost new HttpPost(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPost.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpPost.setHeader("ContentType", this.contentType); httpPost.setHeader("ctyuneoprequestid", this.uuId); httpPost.setHeader("EopAuthorization", getSign(eopDate)); httpPost.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPost.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPost.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPost.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPost); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPut(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpPut远程连接实例 HttpPut httpPut; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPut new HttpPut(this.url + "?" + this.afterQuery); } else { httpPut new HttpPut(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPut.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(20321900,01,05); httpPut.setHeader("ContentType", this.contentType); httpPut.setHeader("ctyuneoprequestid", this.uuId); httpPut.setHeader("EopAuthorization", getSign(eopDate)); httpPut.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPut.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPut.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPut.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPut); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPatch(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpPatch远程连接实例 HttpPatch httpPatch; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPatch new HttpPatch(this.url + "?" + this.afterQuery); } else { httpPatch new HttpPatch(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPatch.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpPatch.setHeader("ContentType", this.contentType); httpPatch.setHeader("ctyuneoprequestid", this.uuId); httpPatch.setHeader("EopAuthorization", getSign(eopDate)); httpPatch.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPatch.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPatch.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPatch.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPatch); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doDelete(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpGet远程连接实例 HttpDelete httpDelete; if (StringUtils.isNotEmpty(this.afterQuery)) { httpDelete new HttpDelete(this.url + "?" + this.afterQuery); } else { httpDelete new HttpDelete(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpDelete.setHeader("ContentType", this.contentType); httpDelete.setHeader("ctyuneoprequestid", this.uuId); httpDelete.setHeader("EopAuthorization", getSign(eopDate)); httpDelete.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpDelete.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpDelete.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 httpDelete.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(httpDelete); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response sendJsonByDeleteReq(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpGet远程连接实例 HttpDeleteWithBody delete; if (StringUtils.isNotEmpty(this.afterQuery)) { delete new HttpDeleteWithBody(this.url + "?" + this.afterQuery); } else { delete new HttpDeleteWithBody(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); delete.setHeader("ContentType", this.contentType); delete.setHeader("ctyuneoprequestid", this.uuId); delete.setHeader("EopAuthorization", getSign(eopDate)); delete.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { delete.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : delete.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); HttpEntity httpEntity new StringEntity(body, Charset.forName("UTF8")); delete.setEntity(httpEntity); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 delete.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(delete); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doHead(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpHead远程连接实例 HttpHead httpHead; if (StringUtils.isNotEmpty(this.afterQuery)) { httpHead new HttpHead(this.url + "?" + this.afterQuery); } else { httpHead new HttpHead(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpHead.setHeader("ContentType", this.contentType); httpHead.setHeader("ctyuneoprequestid", this.uuId); httpHead.setHeader("EopAuthorization", getSign(eopDate)); httpHead.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpHead.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpHead.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpHead实例设置配置 httpHead.setConfig(requestConfig); // 执行head请求得到返回对象 response httpClient.execute(httpHead); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } private String toHex(byte[] data) { StringBuilder sb new StringBuilder(data.length 2); byte[] var2 data; int var3 data.length; for (int var4 0; var4 2) { String encodeStr null; encodeStr URLEncoder.encode(s[1], "UTF8"); str s[0] + "" + encodeStr; afterQuery afterQuery + str; } else { String encodeStr ""; str s[0] + "" + encodeStr; afterQuery afterQuery + str; } } else { String[] s str.split(""); if (s.length > 2) { String encodeStr URLEncoder.encode(s[1], "UTF8"); str s[0] + "" + encodeStr; afterQuery afterQuery + "&" + str; } else { String encodeStr ""; str s[0] + "" + encodeStr; afterQuery afterQuery + "&" + str; } } } } } catch (Exception e) { e.printStackTrace(); } return afterQuery; } } 3. HexUtils.java java package com.ffcs.ebp.ebpsdk; public class HexUtils { private static final char[] HEXES { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; / byte数组 转换成 16进制小写字符串 / public static String bytes2Hex(byte[] bytes) { if (bytes null bytes.length 0) { return null; } StringBuilder hex new StringBuilder(); for (byte b : bytes) { hex.append(HEXES[(b >> 4) & 0x0F]); hex.append(HEXES[b & 0x0F]); } return hex.toString(); } / 16进制字符串 转换为对应的 byte数组 / public static byte[] hex2Bytes(String hex) { if (hex null hex.length() 0) { return null; } char[] hexChars hex.toCharArray(); byte[] bytes new byte[hexChars.length / 2]; // 如果 hex 中的字符不是偶数个, 则忽略最后一个 for (int i 0; i headerMap new HashMap<>(); // headerMap.put("queryMetricDataInfo", "{"regionId":"cnsz1","dim":"instanceid,98cdcc8a8e544788ab9cc94ccee429c7","filter":"average","from":"1658473040","to":"1658473040","metricName":"netbitRecv","namespace":"AGT.ECS","period":"1"},"platform":"3"}"); // headerMap.put("platform", "3"); // headerMap.put("consoleUrl", " // headerMap.put("UserAgent", "3333433"); // headerMap.put("XForwardedFor", "1231313"); // headerMap.put("regionId", "100054c0416811e9a6690242ac110002"); // headerMap.put("prodInstId","9dcaf0157c604100af79bdb8271527bc"); //请求地址 String url " //query参数(?后面拼接的参数。没有就不填) aaaa&bbbb String queryStr "regionID41f64827xxxxxxxxxffa3a5deb5d15d"; //body参数(没有就不填) String body ""; //APPID String ak "9f82cacd3f8235c66edfs5e899f098e6"; //appkey String sk "MlgzESz430hJgTzA4lkjuJvDMMLTqwBQRicVqV62VM"; String uuId UUID.randomUUID().toString(); //连接超时 int connectTimeout 35000; //连接请求超时 int connectionRequestTimeout 35000; //socket超时 int socketTimeout 60000; YunSign yunSign new YunSign(url, ak, sk, uuId, body, temp, contentType, queryStr, headerMap); Response response yunSign.toDo(method, connectTimeout, connectionRequestTimeout, socketTimeout); System.out.println("应答头部 "); for (Map.Entry entry : response.getHeaders().entrySet()) { System.out.println(entry.getKey().toString() + ":" + entry.getValue().toString()); } System.out.println(); System.out.println("请求结果 "); System.out.println(response.getBody()); } }
        来自:
        帮助文档
        对象存储 ZOS
        API参考
        如何调用API
        Java调用示例
      • 步骤六:连接DRDS实例逻辑库
        连接方式 IP地址 使用场景 说明 内网连接 内网IP地址 系统默认提供内网IP地址。当部署应用的弹性云主机,与DRDS实例处于同一区域的同一VPC内时,建议使用内网IP连接弹性云主机与DRDS实例。 安全性较高,提升网络连接的速度和DRDS实例的稳定性。推荐使用内网连接。 公网连接 弹性公网IP 不能通过内网IP地址访问DRDS实例时,使用公网访问。建议单独绑定弹性公网IP,实现弹性云主机(或公网主机)与DRDS实例间的连接。 安全性较低。为了获得更快的传输速率和更高的安全性,建议您将应用迁移到与您的DRDS实例在同一VPC内,使用内网连接。
        来自:
        帮助文档
        分布式关系型数据库
        快速入门
        步骤六:连接DRDS实例逻辑库
      • 存储类别简介
        对比项目 标准存储 低频访问存储 归档存储 特点 高性能、高可靠、高可用的对象存储服务 高可靠、较低成本的实时访问存储服务 归档数据的长期存储,存储单价更优惠 应用场景 云应用、数据分享、内容分享、热点对象 网盘应用、企业备份、活跃归档、监控数据 档案数据、医疗影像、视频素材、带库替代 最低存储时间 无 30天 90天 图片处理 支持 支持 不支持
        来自:
        帮助文档
        对象存储 OBS
        用户指南
        存储类别简介
      • 1
      • ...
      • 106
      • 107
      • 108
      • 109
      • 110
      • ...
      • 452
      跳转至
      推荐热词
      天翼云运维管理审计系统天翼云云服务平台云服务备份云日志服务应用运维管理云手机云电脑天翼云云hbase数据库电信云大数据saas服务电信云大数据paas服务轻量型云主机天翼云客户服务电话应用编排服务天翼云云安全解决方案云服务总线CSB天翼云服务器配置天翼云联邦学习产品天翼云云安全天翼云企业上云解决方案天翼云产品天翼云视频云存储

      天翼云最新活动

      安全隔离版OpenClaw

      OpenClaw云服务器专属“龙虾“套餐低至1.5折起

      青云志云端助力计划

      一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云

      云上钜惠

      爆款云主机全场特惠,2核4G只要1.8折起!

      中小企业服务商合作专区

      国家云助力中小企业腾飞,高额上云补贴重磅上线

      出海产品促销专区

      爆款云主机低至2折,高性价比,不限新老速来抢购!

      天翼云奖励推广计划

      加入成为云推官,推荐新用户注册下单得现金奖励

      产品推荐

      物理机 DPS

      多活容灾服务

      GPU云主机

      弹性伸缩服务 AS

      AI Store

      公共算力服务

      科研助手

      一站式智算服务平台

      人脸活体检测

      推荐文档

      计费类

      专属云到期提醒

      管理

      修改数据库端口

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 天翼云国际站
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2026 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号