华为云用户手册

  • 系统账户说明 您在创建HTAP实例时,系统会自动为HTAP实例创建如下系统账户(用户不可使用),用于给HTAP实例提供完善的后台运维管理服务。 删除、重命名、修改这些账户的密码和权限信息,会导致实例运行异常,请谨慎操作。 rdsAdmin:管理账户,拥有最高的superuser权限,用于查询和修改实例信息、故障排查、迁移、恢复等操作。 rdsMetric:指标监控账户,用于watchdog采集数据库状态数据。
  • 操作场景 您可以复制您创建的自定义数据库参数模板。当您已创建一个数据库参数模板,并且想在新的数据库参数模板中包含该组中的大部分自定义参数和值时,复制参数模板是一个方便的解决方案。您还可以复制某数据库实例应用的参数列表,生成一个新的参数模板,供您后期使用。 复制数据库参数模板之后,您应至少等待5分钟,再创建使用该数据库参数模板作为默认参数模板的第一个数据库实例。 您无法复制默认参数模板。不过,您可以创建基于默认参数模板的新参数模板。
  • 修订记录 发布日期 修改说明 2024-02-23 第四十五次正式发布,包含以下内容: 新增同步参数“min_binlog_expire_logs_seconds”,具体请参见进行数据同步。 HTAP实例支持慢日志功能,具体请参见查看慢日志。 GaussDB(for MySQL)支持数据同步中修改黑白名单配置,具体请参见修改表黑白名单。 设置黑白名单时支持通过搜索选择同步表的范围,具体请参见进行数据同步。 HTAP实例支持SSL数据加密,具体请参见设置SSL数据加密、通过HTTPS协议连接。 2024-01-23 第四十四次正式发布,包含以下内容: 读写分离地址修改为代理地址。 “innodb_parallel_select_count”变更为规格参数,具体请参见变更实例的CPU和内存规格。 包年/包月实例的自动变配功能支持增删按需计费类型的只读节点,具体请参见设置自动变配(自动扩缩容)。 HTAP只读分析修改为HTAP实时分析。 2024-01-15 第四十三次正式发布,包含以下内容: Serverless计费说明,修改计费说明。 2023-12-29 第四十二次正式发布,包含以下内容: GaussDB(for MySQL)支持开启透明数据加密功能,具体请参见开启透明数据加密。 2023-12-05 第四十一次正式发布,包含以下内容: 内核新增如下功能: 并行DDL DDL快速超时 主动终止空闲事务 LIMIT OFFSET下推 IN谓词转子查询 大事务检测能力 2023-11-03 第四十次正式发布,包含以下内容: GaussDB(for MySQL)新增监控指标“undo空间内未清理掉的事务个数”。 GaussDB(for MySQL)补充Serverless计费说明。 GaussDB(for MySQL) Proxy支持减少节点。 GaussDB(for MySQL) 开通读写分离支持子网。 2023-10-12 第三十九次正式发布,包含以下内容: GaussDB(for MySQL)新增自动续费。 GaussDB(for MySQL)新增迁移方案总览。 2023-08-31 第三十八次正式发布,包含以下内容: GaussDB(for MySQL)新增慢SQL。 GaussDB(for MySQL)新增Top SQL。 GaussDB(for MySQL)新增SQL洞察。 GaussDB(for MySQL)新增SQL限流。 GaussDB(for MySQL)开启读写分离后支持修改实例内网安全组。 2023-07-24 第三十七次正式发布,包含以下内容: GaussDB(for MySQL)自动变配补充计费说明。 GaussDB(for MySQL)优化备份原理。 GaussDB(for MySQL)补充库表时间点恢复的表数量限制。 GaussDB(for MySQL)创建手动备份补充使用须知和备份清理。 GaussDB(for MySQL)设置同区域备份策略补充约束限制。 2023-07-18 第三十六次正式发布,包含以下内容: GaussDB(for MySQL)新增申请和修改内网域名。 GaussDB(for MySQL)新增设置备份加密。 GaussDB(for MySQL)新增设置路由模式。 GaussDB(for MySQL)新增修改代理实例端口号。 GaussDB(for MySQL) Proxy支持修改和删除内网域名。 2023-06-20 第三十五次正式发布,包含以下内容: GaussDB(for MySQL)包周期实例支持设置自动变配,详细内容请参考请参考设置自动变配(自动扩缩容)。 GaussDB(for MySQL)新增“容灾切换”和“数据库进程重新启动”事件,详细内容请参考事件监控支持的事件说明。 2023-05-22 第三十四次正式发布,包含以下内容: GaussDB(for MySQL)磁盘容量变更,缩容支持最小容量10GB,详细内容请参考磁盘容量变更(包年/包月)。 GaussDB(for MySQL)设置自动备份策略,保留天数支持1~3660天,详细内容请参考设置同区域备份策略。 GaussDB(for MySQL)包年/包月实例支持可维护时间段内规格变更,详细内容请参考变更实例的CPU和内存规格。 GaussDB(for MySQL)实例恢复到指定时间点,支持自动同步原实例数据库参数,详细内容请参考将数据库实例恢复到指定时间点。 2023-04-20 第三十三次正式发布,包含以下内容: GaussDB(for MySQL)新增设置连接池。 GaussDB(for MySQL)新增智能DBA助手。 GaussDB(for MySQL)创建数据库时支持添加备注,详细内容请参考创建数据库。 GaussDB(for MySQL)创建数据库账号时支持添加备注,详细内容请参考创建数据库账号。 2023-03-31 第三十二次正式发布,包含以下内容: GaussDB(for MySQL)新增操作系统更新。 2023-03-20 第三十一次正式发布,包含以下内容: GaussDB(for MySQL)新增修改节点名称。 GaussDB(for MySQL)支持设置回收站策略,详细内容请参考回收站。 2023-02-23 第三十次正式发布,包含以下内容: GaussDB(for MySQL)优化创建数据库,数据库名称支持中划线。 2023-01-30 第二十九次正式发布,包含以下内容: GaussDB(for MySQL)新增重启代理实例。 2022-12-30 第二十八次正式发布,包含以下内容: GaussDB(for MySQL)新增修改代理实例参数。 GaussDB(for MySQL)新增设置Multi-Statements处理模式。 GaussDB(for MySQL)新增升级代理实例内核版本。 GaussDB(for MySQL)新增日志配置管理,实例新生成的日志记录会上传到云日志服务。 GaussDB(for MySQL)优化查看错误日志,补充LTS错误日志配置。 GaussDB(for MySQL)优化查看慢日志,补充LTS慢日志配置。 GaussDB(for MySQL)优化重启节点。 GaussDB(for MySQL)优化创建只读节点,补充故障倒换优先级的说明。 2022-12-20 第二十七次正式发布,包含以下内容: GaussDB(for MySQL)优化支持的监控指标。 2022-12-13 第二十六次正式发布,包含以下内容: GaussDB(for MySQL)新增备份原理。 GaussDB(for MySQL)新增备份空间及计费。 GaussDB(for MySQL)优化开通读写分离,补充约束限制。 GaussDB(for MySQL)优化读写分离简介,补充约束限制。 2022-11-21 第二十五次正式发布,包含以下内容: GaussDB(for MySQL)优化只读节点简介,补充功能限制。 2022-11-14 第二十四次正式发布,包含以下内容: GaussDB(for MySQL)优化设置全量SQL,补充约束限制。 2022-10-31 第二十三次正式发布,包含以下内容: GaussDB(for MySQL)新增设置事务拆分。 2022-10-26 第二十二次正式发布,包含以下内容: GaussDB(for MySQL)新增重启节点。 GaussDB(for MySQL)优化设置同区域备份策略,补充全量备份文件自动删除策略。 GaussDB(for MySQL)优化升级内核小版本,补充注意事项。 GaussDB(for MySQL)优化变更实例的CPU和内存规格,补充支持缩小和扩大规格描述。 2022-07-30 第二十一次正式发布,包含以下内容: GaussDB(for MySQL)新增将库表数据恢复到指定时间点。 GaussDB(for MySQL)新增数据库管理。 GaussDB(for MySQL)新增账号管理(非管理员权限)。 GaussDB(for MySQL)刷新磁盘容量变更(包年/包月),增加包周期实例支持缩容功能。 GaussDB(for MySQL)优化修改一致性级别说明内容。 GaussDB(for MySQL)刷新查看慢日志,增加如何下载慢日志说明。 2022-06-30 第二十次正式发布,包含以下内容: GaussDB(for MySQL)新增可维护时间段重启实例。 GaussDB(for MySQL)新增将数据库实例恢复到指定时间点支持恢复到当前实例和已有实例。 GaussDB(for MySQL)新增将备份恢复至实例支持恢复到当前实例和已有实例。 GaussDB(for MySQL)秒级监控商用收费。 GaussDB(for MySQL)新增慢日志明文显示功能。 2022-05-19 第十九次正式发布,包含以下内容: GaussDB(for MySQL)只读节点升主节点增加提示说明。 GaussDB(for MySQL)新增一致性级别。 GaussDB(for MySQL)新增修改一致性级别。 2022-04-21 第十八次正式发布,包含以下内容: GaussDB(for MySQL)支持变更代理实例的规格。 GaussDB(for MySQL)支持修改代理地址。 GaussDB(for MySQL)刷新支持的监控指标。 GaussDB(for MySQL)新增性能测试。 2022-03-04 第十六次正式发布,包含以下内容: GaussDB(for MySQL)新增配置和修改读写内网地址。 2021-11-24 第十五次正式发布,包含以下内容: GaussDB(for MySQL)数据库代理支持开启多个代理实例。 GaussDB(for MySQL)新增使用规范。 2021-10-31 第十四次正式发布,包含以下内容: GaussDB(for MySQL)新增退订只读节点(包年/包月计费)。 2021-09-31 第十三次正式发布,包含以下内容: GaussDB(for MySQL)新增磁盘使用率监控指标。 2021-08-31 第十二次正式发布,包含以下内容: GaussDB(for MySQL)刷新支持的监控指标单位。 GaussDB(for MySQL)优化修改实例内网安全组内容。 GaussDB(for MySQL)新增设置SSL数据加密。 GaussDB(for MySQL)新增修改实例备注。 GaussDB(for MySQL)新增实例主备切换事件监控。 GaussDB(for MySQL)优化GaussDB(for MySQL)自定义策略内容。 GaussDB(for MySQL)新增设置全量SQL。 2021-06-10 第十一次正式发布,包含以下内容: GaussDB(for MySQL)刷新事件监控支持的事件说明。 2021-05-31 第十次正式发布,包含以下内容: GaussDB(for MySQL)支持规格降配置。 GaussDB(for MySQL)新增包周期实例转按需。 GaussDB(for MySQL)新增升级内核小版本。 GaussDB(for MySQL)新增支持的监控指标监控指标。 2021-03-30 第九次正式发布,包含以下内容: 优化用户指南整体框架结构。 优化查看实例监控入口及界面内容。 优化开通读写分离约束限制内容。 优化参数模板管理约束限制内容。 2020-12-30 第八次正式发布,包含以下内容: GaussDB(for MySQL)新增查看proxy监控指标。 GaussDB(for MySQL)新增创建proxy告警规则。 GaussDB(for MySQL)新增事件监控。 2020-10-30 第七次正式发布,包含以下内容: GaussDB(for MySQL)新增回收站。 GaussDB(for MySQL)新增标签。 2020-08-30 第六次正式发布,包含以下内容: GaussDB(for MySQL)新增数据库代理(读写分离)。 GaussDB(for MySQL)新增导出备份信息。 GaussDB(for MySQL)新增参数模板管理。 2020-07-30 第五次正式发布,包含以下内容: GaussDB(for MySQL)支持数据库实例设置可维护时间段。 GaussDB(for MySQL)新增监控指标英文标签。 2020-04-24 第四次正式发布,包含以下内容: 根据界面优化更新计费管理、数据库连接、管理数据库实例、只读节点、数据库安全性、备份与恢复、日志相关的内容。 2020-03-13 第三次正式发布,包含以下内容: GaussDB(for MySQL)支持将数据库实例恢复到指定时间点。 GaussDB(for MySQL)新增3个云监控指标:数据同步延迟、存储写时延、存储读时延。 2020-02-24 第二次正式发布,包含以下内容: GaussDB(for MySQL)支持包周期实例续费。 GaussDB(for MySQL)按需实例支持转包周期。 GaussDB(for MySQL)支持退订包周期实例。 GaussDB(for MySQL)包周期实例支持扩容存储空间。 GaussDB(for MySQL)新增只读节点:创建、管理、只读升主和删除按需只读。 2019-09-03 第一次正式发布。
  • 前提条件 HTAP只读实例正常运行。 故障、删除状态的HTAP实例,无法在云监控中查看其监控指标。当HTAP只读实例的状态为正常后,即可正常查看。 故障24小时的HTAP只读实例,云监控将默认该HTAP只读实例不存在,并在监控列表中删除,不再对其进行监控,但告警规则需要用户手动清理。 HTAP只读实例已正常运行一段时间(约10分钟)。 对于新创建的HTAP只读实例,需要等待一段时间,才能查看上报的监控数据和监控视图。
  • 计费说明 GaussDB(for MySQL)为您免费提供监控频率为60秒/次的监控服务,开通秒级监控会产生额外费用,且计费方式为按需计费(每小时扣费一次),不足一小时按照实际使用时长收费。 表1 秒级监控价格说明 区域 监控频率 按需(元/小时) 上海一、北京二、北京四、广州、贵阳一、乌兰察布一、广州友好 1秒监控 0.1 5秒监控 0.048 新加坡、雅加达、香港、曼谷、土耳其 1秒监控 0.236 5秒监控 0.118 圣保罗一 1秒监控 0.4 5秒监控 0.2
  • 迁移准备 GaussDB(for MySQL)支持开启公网访问功能,通过弹性公网IP进行访问。您也可通过弹性云服务器的内网访问GaussDB(for MySQL)。 准备弹性云服务器或可通过公网访问GaussDB(for MySQL)。 通过弹性云服务器连接GaussDB(for MySQL)数据库实例,需要创建一台弹性云服务器。 创建并登录弹性云服务器,请参见《弹性云服务器快速入门》中“购买弹性云服务器”和“登录弹性云服务器”。 通过公网地址连接GaussDB(for MySQL)数据库实例,需具备以下条件。 先对GaussDB(for MySQL)数据库实例绑定公网地址,如何绑定公网地址,请参见绑定弹性公网IP。 保证本地设备可以访问GaussDB(for MySQL)数据库实例绑定的公网地址。 在准备的弹性云服务器或可访问GaussDB(for MySQL)数据库的设备上,安装MySQL客户端。 该弹性云服务器或可访问GaussDB(for MySQL)数据库的设备需要安装和GaussDB(for MySQL)数据库服务端相同版本或更高版本的数据库客户端,MySQL数据库或客户端会自带mysqldump和mysql工具。
  • 前提条件 GaussDB(for MySQL)实例需要按照表1进行参数设置。 表1 参数说明 参数名称 参数值 修改方式 default_authentication_plugin mysql_native_password 修改实例参数 binlog_expire_logs_seconds 86400 说明: binlog的保留时间建议大于1天:60(秒)*60(分钟)*24(小时)=86400,防止由于binlog时间设置过短,导致增量复制失败。 修改实例参数 log_bin 说明: GaussDB(for MySQL)内核版本小于2.0.45.230900时,使用该参数。 ON GaussDB(for MySQL)服务如何开启binlog? rds_global_sql_log_bin 说明: GaussDB(for MySQL)内核版本大于或等于2.0.45.230900时,使用该参数。 ON GaussDB(for MySQL)服务如何开启binlog? binlog_format ROW 通过“SHOW VARIABLES;”命令查看参数的值,如需修改,请联系客服人员修改。 binlog_row_image FULL 通过“SHOW VARIABLES;”命令查看参数的值,如需修改,请联系客服人员修改。 log_bin_use_v1_row_events OFF 通过“SHOW VARIABLES;”命令查看参数的值,如需修改,请联系客服人员修改。 GaussDB(for MySQL)实例已创建数据库和表。
  • 库表规范 所有创建的MySQL表必须为InnoDB引擎,适配MySQL的其它引擎不支持事务。 小数类型为decimal,禁止使用float和double。 float和double在存储的时候,存在精度损失的问题,很可能在值比较的时候得到的结果有误。如果存储的数据范围超过decimal的范围,建议将数据拆成整数和小数分开存储。 禁用保留字,如desc、range、match、delayed等,请参考保留关键字。 数据表必须有主键,可以使用业务相关,有序且具有唯一性的字段作为主键,也可以使用业务无关的自增长字段作为主键。 表字段必须有默认值加NOT NULL,数字类型默认值推荐给0,varchar等字符类型默认值推荐空字符串''。 无主键不仅容易导致主库执行速度慢和复制延迟问题。 避免使用分区表,如有需要,可以使用多个独立的表代替。 分区表的缺点: DDL操作需要锁定所有分区,导致所有分区上操作都被阻塞。 当表数据量较大时,对分区表进行DDL或其他运维操作难度大风险高。 分区表使用较少,存在未知风险。 当单台服务器性能无法满足时,对分区表进行分拆的成本较高。 当分区表操作不当导致访问所有分区时,会导致严重的性能问题。 建议表包含两个字段:create_time,update_time, 且均为datetime类型。 数据仓库拖取数据时可以利用这两个统一字段无需询问业务。 在数据库出现意外时可以判断数据进入数据库和修改的时间,在极端情况可以帮助数据恢复的判断。 varchar是可变长字符串,不预先分配存储空间,长度不要超过2048。 如果存储长度大于此值,定义字段类型为text,或者独立出来一张表,用主键来对应,避免影响其他字段索引效率。 表单行行内长度不得超过1024字节。 控制单表字段数量,字段上限50个。 如果存储的字符串长度几乎相等,使用char定长字符串类型。 字段允许适当跨表冗余,以避免关联查询,提高查询性能,但必须考虑数据一致。 冗余字段应遵循: 不是频繁修改的字段。 不是varchar超长字段和text字段。 合适的存储长度(不建议使用LONG TEXT, BLOB等长类型字段),不但节约数据库表空间、节约索引存储,更重要的是提升检索速度。 父主题: 设计规范
  • 开启DDL快速超时 表1 参数说明 参数名称 级别 描述 rds_ddl_lock_wait_timeout Global,Session 控制当前会话或者全局的DDL超时时间。 时间单位为秒,范围为1秒到31536000,默认值为31536000,相当于不开启。 对于DDL的等锁超时,其真实超时时间是lock_wait_timeout和rds_ddl_lock_wait_timeout的最小值。 对于DDL过程中InnoDB层的加表锁超时(行锁不在该考虑范围),其真实超时时间是innodb_lock_wait_timeout和rds_ddl_lock_wait_timeout)的最小值。
  • 使用示例 首先开启一个客户端,执行加锁操作,示例如下。 图1 加锁操作 通过如下命令,查看DDL快速超时功能的状态。 show variables like "%rds_ddl_lock_wait_timeout%"; 图2 查看状态 如上图所示,查询到“rds_ddl_lock_wait_timeout”的值是“31536000”,此时是默认值,相当于不开启DDL快速超时功能。如果此时等锁,就会卡在这里。 如果需要开启DDL快速超时功能,可以将这个值设置为预期值,操作请参考3。 设置参数。 执行如下命令,设置“rds_ddl_lock_wait_timeout”参数值。 set rds_ddl_lock_wait_timeout=1; 图3 设置参数 然后执行如下创建索引命令,发现DDL操作会快速超时失败,符合预期。 alter table lzk.t_lzk drop index indexa; 图4 执行创建索引命令
  • 慢日志明文显示 慢日志明文显示开关开启后,会直接显示慢日志SQL明文。 明文显示的日志30天后会自动删除。如果实例删除,相关日志也同步删除。 在“实例管理”页面,选择目标实例,单击实例名称,进入“基本信息”页面。 在左侧导航栏中选择“HTAP实时分析”。 单击目标HTAP实例名称,进入HTAP实例基本信息页面。 在左侧导航栏,单击“日志管理”。 在“慢日志”页签下,单击“开启慢日志明文显示”右侧开关。 图2 慢日志明文显示 在“开启慢日志明文显示”弹框中,单击“是”,开启慢日志明文显示功能。 图3 开启慢日志明文显示
  • LTS慢日志配置 在“实例管理”页面,选择目标实例,单击实例名称,进入实例的“基本信息”页面。 在左侧导航栏中选择“HTAP实时分析”。 单击目标HTAP实例名称,进入HTAP实例基本信息页面。 在左侧导航栏,单击“日志管理”。 在“慢日志”页签,单击“LTS慢日志配置”后的。 图4 LTS慢日志配置 在弹框中,选择“配置日志组”和“配置日志流”,单击“确定”。 图5 LTS慢日志配置 访问日志提供了实例所请求的所有详细日志,日志存在云日志服务LTS中。 LTS慢日志配置完成后不会立即生效,会存在10分钟左右的时延,请知悉。 LTS慢日志配置成功后,会产生一定费用,具体计费可参考LTS的计费说明。
  • 备份原理 云数据库GaussDB(for MySQL)基于华为最新一代DFV存储,采用计算与存储分离架构,计算层用于给外界提供服务,管理日志信息,存储层存储数据信息。存储层分为Common Log节点和Slice Store 节点,Common Log节点存储日志信息,Slice Store节点存储数据信息。 如图2所示,GaussDB(for MySQL)实例的备份是由计算层和存储层各自完成的。 计算层的主节点读取存储层的Common Log节点的日志信息,通过主节点备份到对象存储服务(OBS)中。 计算层的主节点向存储层的Slice Store节点发送命令备份数据信息,通过Slice Store节点备份到对象存储服务(OBS)中。 备份过程会占用少量CPU内存资源。因此在备份期间,实例主节点的CPU使用率和内存使用率,会有一点升高,属于正常现象,存储层的备份用户侧不感知。最终的备份文件将以多个数据文件形式存储在对象存储服务(OBS)中,不会占用实例的磁盘空间。 图2 备份原理
  • 使用须知 按需实例不支持手动进行磁盘扩容。按需实例不存在磁盘容量的限制,会根据实际使用情况进行自动扩缩容。 针对包年/包月实例,您在购买实例时选择了多大的磁盘容量,系统就会分配多大的磁盘容量。如果后期存储需求超过当前的磁盘容量,GaussDB(for MySQL)会自动扩容,扩容的部分将按需计费。如果后面存储需求下降,则优先会将自动扩容的磁盘容量进行缩容。 示例:比如您够买实例时选择了10GB的磁盘容量,后来需求增加到了18GB,GaussDB(for MySQL)会自动扩容到18GB来满足您的存储需求。此后您通过手动方式将磁盘容量扩充了10GB,这个时候原来购买的磁盘容量和手动扩容的磁盘容量总计有20GB,已经可以满足您的存储需求,这20GB将按照包年/包月来计费,之前GaussDB(for MySQL)自动扩容的磁盘容量会自动缩容,不再产生按需计费。 自动扩缩容都是按需的,不存在磁盘步长。手动扩缩容的磁盘步长为10GB。 手动缩容只能对手动扩容部分进行操作。 扩容期间,服务不中断,备份业务不受影响。 GaussDB(for MySQL)数据库实例支持无限次容量变更。 容量变更过程中,该实例不可重启和删除。
  • 模式描述 更改Multi-Statements模式立即生效,无需重启数据库代理。但如果模式切换前存在由于执行了Multi-Statements导致读写分离失效的连接,不会因为切换模式而恢复读写分离,需要断开重连才能恢复。 Strict模式(默认) Multi-Statements会发往主节点,当前连接的后续请求读写分离失效,会全部路由到主节点,需断开当前连接并重新连接才能恢复读写分离。 该模式不会解析Multi-Statements,性能好,适合短连接、无连接复用场景。 Loose模式 Multi-Statements会发往主节点,当前连接的后续请求依旧可以读写分离。 该模式不会解析Multi-Statements,性能好,适合Multi-Statements内仅含DML SQL,不含设置session变量、创建临时表、创建存储过程、执行未提交事务等操作的场景。 Parse模式 该模式下,Multi-Statements会发往主节点,同时数据库代理会解析Multi-Statements,根据Multi-Statements内包含的SQL情况,决定当前连接的后续请求是否恢复读写分离。详细内容请参见Parse模式场景说明。 由于该模式会解析Multi-Statements,对代理性能有一定影响,影响程度与Multi-Statements的长度和复杂性相关,建议Multi-Statements小于100MB,避免数据库代理解析SQL消耗过多的资源,引起性能明显下降。
  • Parse模式场景说明 当Multi-Statements包含如下场景时,后续请求会全部路由到主节点,需断开当前连接并重新连接才能恢复读写分离。 Multi-Statements内创建临时表。 Multi-Statements内创建存储过程。 Multi-Statements内含未提交的事务(如执行了begin,但未执行commit或rollback)。 Multi-Statements过于复杂或含特殊语法等导致Multi-Statements解析失败。
  • 操作场景 自动续费可以减少手动续费的管理成本,避免因忘记手动续费而导致云数据库GaussDB(for MySQL)被自动删除。 包年/包月实例购买时如果未设置自动续费,实例管理页面支持开通自动续费。 包年/包月实例购买时如果已设置自动续费或购买后已开通自动续费,实例管理页面支持修改自动续费。 自动续费的规则如下所述: 以云数据库GaussDB(for MySQL)的到期日计算第一次自动续费日期和计费周期。 云数据库GaussDB(for MySQL)自动续费周期以您选择的续费时长为准。 按月购买:默认自动续费周期为1个月。 按年购买:默认自动续费周期为1年。 开通自动续费后,还可以手动续费该数据库实例。手动续费后,自动续费仍然有效,在新的到期时间前的第7天开始扣款。 自动续费的到期前7日自动扣款属于系统默认配置,您也可以根据需要修改此扣款日,如到期前6日、到期前5日等等。 更多关于自动续费的规则介绍请参见自动续费规则说明。
  • 解绑弹性公网IP 对于已绑定弹性公网IP的HTAP只读实例,在左侧导航栏选择“HTAP实时分析”,选择目标HTAP实例名称,进入实例“基本信息”页面。 在网络信息模块,单击“读写公网地址”后面的“解绑”。 图3 解绑弹性公网IP 在“解绑”弹出框中单击“是”,解绑弹性公网IP。 若您已开启高危操作保护,在“身份验证”弹出框中单击“获取验证码”,正确输入验证码并单击“确定”,页面自动关闭。 通过进行二次认证再次确认您的身份,进一步提高账号安全性,有效保护您安全使用云产品。关于如何开启操作保护,具体请参考《统一身份认证服务用户指南》的内容。 如需重新绑定,请参见绑定弹性公网IP。
  • 解绑弹性公网IP 对于已绑定弹性公网IP的实例,在“实例管理”页面,选择目标实例,单击实例名称,进入实例“基本信息”页面。 在网络信息模块,单击“读写公网地址”后面的“解绑”。 在“解绑”弹出框中单击“是”,解绑弹性公网IP。如需重新绑定,请参见绑定弹性公网IP。 若您已开启高危操作保护,在弹框中单击“去验证”,跳转至验证页面,单击“免费获取验证码”,正确输入验证码并单击“认证”,页面自动关闭。 关于如何开启操作保护,具体请参考《统一身份认证服务用户指南》的内容。
  • 操作场景 GaussDB(for MySQL)数据库实例创建成功后(默认未绑定“读写公网地址”),您可根据业务需要为实例绑定弹性公网IP,用于在公共网络访问数据库实例,绑定后也可根据需要解绑。 为保证数据库可正常访问,请确保数据库使用的安全组开通了相关端口的访问权限,假设数据库的访问端口是3306,那么需确保安全组开通了3306端口的访问。 绑定弹性公网IP时无可选的EIP,原因可能是该EIP已被其他应用绑定,GaussDB(for MySQL)绑定的EIP需要是未绑定状态才可以绑定,请重新创建弹性公网IP。
  • 架构 云数据库GaussDB(for MySQL)采用计算与存储分离的架构,以减少网络流量为主要架构准则,通过NDP设计将该准则应用到查询操作。没有NDP之前,查询处理需要将原始数据从存储节点全部传输到计算节点。通过NDP设计,查询中的I/O密集型和CPU密集型的大部分工作被下推到存储节点完成,仅将所需列及筛选后的行或聚合后的结果值回传给计算节点,使网络流量大幅减少。同时跨存储节点并行处理,使计算节点CPU使用率下降,提升了查询效率性能。 另外,NDP框架同GaussDB(for MySQL)并行查询进行融合,并进行了页面批量预取的设计,达成执行全流程并行,进一步提升查询执行效率。
  • 健康智能诊断 在“实例概览”页签的“健康智能诊断”模块,查看实时诊断结果,默认展示高压力请求、内存超限风险、慢SQL高频和锁等待的诊断结果。 针对诊断异常的指标,单击“详情与优化”查看诊断详情及优化建议,详情请参见表1。 图3 健康智能诊断 表1 健康智能诊断及优化 诊断项目 异常触发条件 高压力请求 满足其一即触发异常诊断: 收到用户通过CES配置的“CPU利用率”的告警后 连续5min内“CPU利用率”有超过一半时间超过95% 内存超限风险 满足其一即触发异常诊断: 收到用户通过CES配置的“内存使用率”告警后 或者5min存在“内存使用率”超过95%情况 慢SQL高频 满足其一即触发异常诊断: 收到了户通过CES配置的“慢日志个数统计”阈值的告警后 或者连续5min“慢日志个数统计”超过100 锁等待 收到了用户通过CES配置的如下告警中的任意一个 行锁花费时间 InnoDB行锁数量 行锁等待数 通过CES配置告警规则,详情请参见创建实例告警规则。 监控指标的详情内容请参见支持的监控指标。
  • 不适用并行执行的情况 下列的查询语句不支持并行执行: 非查询语句 窗口函数 触发器 Prepared Statements 空间索引 查询表为系统表/临时表/非Innodb表 使用全文索引 存储过程 不能转换成semijoin的子查询 不满足only_full_group_by 使用索引归并Index merge hash join溢出到磁盘 加锁查询,如serializable隔离级别,for update/share lock 递归查询 With rollup 存在HIGH_PRIORITY关键字 执行结果返回0行数据(执行计划显示:Zero limit、Impossible WHERE、Impossible HAVING、No matching min/max row、Select tables optimized away、Impossible HAVING noticed after reading const tables、no matching row in const table等) 查询中包含zerofill的列,并且这些列能被优化为常量 generated column、BLOB、TEXT、JSON和GEOMETRY Spatial相关函数(如SP_WITHIN_FUNC等) aggregation(distinct),如sum(distinct)、avg(distinct)、count(distinct) GROUP_CONCAT JSON_ARRAYAGG/JSON_OBJECTAGG 用户自定义函数 STD/STDDEV/STDDEV_POP VARIANCE/VAR_POP/VAR_SAMP BIT_AND, BIT_OR and BIT_XOR set_user_var rand(不含参数的除外) json_*(如json_length,json_type等) st_distance get_lock is_free_lock,is_used_lock,release_lock, release_all_locks sleep xml_str weight_string ref函数(VIEW_REF, OUTER_REF, AGGREGATE_REF), SHA,SHA1,SHA2,MD5 row_count user相关函数(user, current_user, session_user, system_user等) 函数extractvalue 函数GeomCollection,GeometryCollection,LineString,MultiLineString,MultiPoint,MultiPolygon,Polygon 函数MASTER_POS_WAIT 空间关系函数(MBRContains,MBRCoveredBy,MBRCovers,MBRDisjoint,MBREquals,MBRIntersects, MBROverlaps, MBRTouches,MBRWithin) 函数Point 函数PS_CURRENT_THREAD_ID() 函数PS_THREAD_ID(CONNECTION_ID()) 函数WAIT_FOR_EXECUTED_GTID_SET 函数WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS 函数UNCOMPRESS(COMPRESS()) 函数STATEMENT_DIGEST_TEXT 函数BINARY、函数CONVERT ST_开头的函数匀不支持
  • 与串行执行结果可能不兼容 并行执行的执行结果可能存在与串行执行不兼容的情况,主要表现在: 错误或者告警提示次数可能会增多 对于在串行执行中出现错误/告警提示的查询,在并行执行情况下,每个工作线程可能都会提示错误/告警,导致总体错误/告警提示数会增多。 精度问题 并行执行的执行过程中,当select的内容是函数类型时,会比非并行执行多出中间结果的存储过程,可能会导致浮点部分精度差别,导致最终结果有细微的差别。 截断问题 并行执行的执行过程中,当select的内容是函数类型时,会比非并行执行多出中间结果的存储过程。在这个过程中,需要缓存函数的计算结果,可能出现截断(一般是类型转换导致的,例如浮点数类型转为字符串等), 导致最终结果与串行结果有差别。 结果集顺序差别 因为是多个工作线程执行查询,返回的结果集可能与非并行执行顺序不一致。在具有LIMIT查询的情况下,更容易出现与串行结果顺序不同的现象。对于不可见字符,当MySQL判断多个不可见字符相等时,可能会出现结果集顺序不同,或者group by字段不同的现象。 union all结果集差别 union all会忽略其中的排序算子,并行执行下返回的结果集顺序可能与非并行不一致。在有limit查询的情况下,会出现结果集不同的现象。
  • 关闭SSL加密 在“实例管理”页面,选择指定的实例,单击实例名称。 在左侧导航栏中选择“HTAP实时分析”,单击目标HTAP实例名称,进入HTAP实例基本信息页面。 在“实例信息”模块的“SSL”处,单击。 图2 关闭SSL 在弹出框中,单击“是”,关闭SSL加密。 稍后可在“基本信息”页面,查看到SSL已关闭。 SSL关闭后,您可以通过非SSL方式连接HTAP实例,具体操作请参见通过JDBC方式连接。
  • 产品特性 支持MVCC(多版本并发控制),提供事务一致性读 提供四种隔离级别,用户可以根据具体使用场景,在创建数据同步时通过设置参数值选择所需隔离级别。 READ_UNCOMMITTED:读未提交,无事务一致性。 READ_COMMITTED:读最新已提交数据,提供一致性读。 QUERY_SNAPSHOT:快照查询,避免数据去重归并操作,提供极速查询性能,且保证一致性读。 QUERY_RAW:返回所有原始数据,包括已删除和更新的不同版本。 快速去重 基于快照技术,对数据进行快速去重,提升查询性能。 数据压缩存储 HTAP实时分析默认压缩存储数据,同等条件下能够节约大量存储成本。 并行数据同步 初始全量数据同步阶段,基于数据统计信息自动分片,并行化处理提升同步性能。在建库同步时可以设置并行线程数。 表定义改写 在创建同步时,用户可根据业务场景对表进行个性化修改,进一步提成分析查询性能,我们的支持六种修改方式:ORDER BY、PARTITION BY、SAMPLE BY、 PRIMARY KEY、TTL、COLUMNS。 同步黑白名单过滤 在创建同步时,用户可根据业务需要,通过黑白名单选择所需表或排除表的方式进行筛选。 Binlog合并 当一个库有多个同步时,会合并使用一份binlog,减少从GaussDB(for MySQL)同步时的网络资源消耗。 增强数据复制的稳定性 支持绝大部分GaussDB(for MySQL)的DDL同步。支持字符集的自动转换,将源库的字符集,自动转换成目标库的UTF-8字符集。 数据类型更丰富 支持GaussDB(for MySQL)的全部数据类型,具体类型对应关系参见数据类型对应关系。 多个数据源汇聚 支持将多个GaussDB(for MySQL)数据库同步到一个HTAP实例。 安全增强 对用户账号信息进行加密保存。
  • 约束限制 存在以下场景则无法创建异构容灾实例: 表1 限制条件 限制场景 原因 未开启Binlog 原实例和容灾实例之间需要使用Binlog实时同步数据。 Binlog格式不是row 可能导致容灾链路中断。 存在触发器 可能导致原实例和容灾实例之间数据不一致 存在事件 可能导致原实例和容灾实例之间数据不一致。 库名、表名、字段名、索引等存在特殊字符 可能导致容灾链路中断。 数据量过大(超过4TB) 容灾实例的容量存在上限。 安全组限制 容灾链路无法连接数据库以同步数据。 冻结状态 冻结状态无法创建容灾实例。 VPC子网IP不足 容灾实例也会占用同子网IP。 无主键表或无索引表且存在大量操作 可能导致容灾链路中断。 外键级联操作 可能导致原实例和容灾实例之间数据不一致。
  • 约束限制 当实例进行CPU/内存规格变更时,该实例不可被删除。 您只能对整个实例进行规格变更,无法对实例中的单个节点进行操作。 仅允许实例规格从通用版变更为独享版,不允许从独享版变更为通用版。 仅包年/包月和按需实例支持选择“立即变更”或“可维护时间段”进行规格变更,Serverless实例不支持规格变更。 可维护时间段内正在进行的规格变更任务不能取消,定时任务未开始前可以取消。 变更规格后会主备倒换,请选择业务低峰期,避免业务异常中断。 关于变更规格的耗时时间,与节点数量、数据库负载和数据库表数量等因素有关。 变更规格后主节点与只读节点的读内网地址会发生变化,请及时在应用程序中修改您的连接地址以免影响业务,推荐使用读写内网地址连接实例。
  • 约束限制 全量SQL默认关闭,如需使用SQL洞察功能,请先开启全量SQL收集开关。 关闭全量SQL后,将不再采集新产生的SQL,已经收集的SQL也会被删除,请您谨慎操作。 当前全量SQL受内存缓冲区限制,业务量大的场景下,全量SQL有较小概率因缓冲区满,存在丢弃部分记录。 当前全量SQL单条记录超过设置的上限时,会默认丢弃该条记录。 此限制可以通过设置参数“rds_sql_tracer_max_record_size ”来选择是否丢弃。您可以通过修改GaussDB(for MySQL)实例参数设置参数值,超过该值的记录会被丢弃。
  • 慢日志存储 开启收集慢日志开关后,会将SQL的文本内容存储到OBS中,以便进行分析。 已升级高级智能运维包,您可以在右上角日志管理,设置慢日志存储时长。 慢SQL存储:默认7天,可设置范围1~30天,到期后自动删除。 全量SQL存储:默认7天,可设置范围为1~180天。 日志数据量:免费赠送5GB的SQL存储空间,超出部分将按需计费。 图5 日志存储与归档(已升级高级智能运维包) 未升级高级智能运维包 慢SQL存储:默认1小时,到期后自动删除。 全量SQL存储:1小时 图6 日志存储与归档(未升级高级智能运维包)
共100000条