-
升级内核小版本 - 云数据库 GaussDB(for MySQL)
升级 内核小版本功能详细内容请参见内核版本说明。 注意事项 单机版实例不支持升级内核小版本。 当有对应的小版本更新时(定期同步开源社区问题、漏洞修复),请及时手动立即升级或者设置可维护时间段升级小版本。 升级数据库内核小版本会重启GaussDB(for MySQL)实例,服务可能会
-
GaussDB(for MySQL)支持导入哪些数据库引擎的数据 - 云数据库 GaussDB(for MySQL)
也是可行的。 异构型数据库之间数据导入导出,一般需要使用Ugo或第三方软件,通过数据复制的方式来实现。比如,先使用工具从Oracle中,以文本的格式导出表记录,然后利用Load语句导入到云数据库GaussDB(for MySQL)支持的数据库引擎。 父主题: 数据库迁移
-
操作系统更新 - 云数据库 GaussDB(for MySQL)
操作系统更新不会更改数据库实例的版本或数据库实例信息。 此外,云数据库 GaussDB(for MySQL)会在用户设置的运维时间段内,通过热补丁方式及时修复影响重大的操作系统漏洞。 父主题: 变更实例
-
大事务检测能力 - 云数据库 GaussDB(for MySQL)
大事务检测能力 众所周知,大事务的存在对实例的健康平稳运行有一些影响,典型场景如大事务的回滚时间很长,会导致升级、规格变更时间变长。GaussDB(for MySQL)提供了大事务检测的能力,当出现大事务,可以通过告警通知客户及时提交。 前提条件 内核2.0.39.230300及以上版本支持该功能。
-
版本发布策略 - 云数据库 GaussDB(for MySQL)
版本EOS之后, GaussDB(for MySQL) 将不再支持创建该版本实例,同时对存量该版本实例不提供相应的技术支持,包含新特性更新、漏洞/问题修复、补丁升级以及工单指导、在线排查等客户支持,不再适用于GaussDB(for MySQL) 服务SLA保障。 集群版本号说明 集群版本:格式为x
-
联合索引设置不当导致慢SQL的解决办法 - 云数据库 GaussDB(for MySQL)
分析对应时间段该实例的慢日志,该SQL执行快时其扫描行数为百万级,当SQL执行慢时其扫描行数为千万级,与业务确认该表短期内并无大量数据插入,因此推断执行慢是因为未走索引或选错索引。且通过EXPLAIN查看该SQL的执行计划确实是全表扫描。 图2 慢日志 在实例上对该表执行SHOW INDEX
-
canal工具报错权限不足 - 云数据库 GaussDB(for MySQL)
canal工具报错权限不足 场景描述 在搭建canal环境,使用指定用户从GaussDB(for MySQL)获取Binlog时,启动canal经常会报如下错误:'show master status' has an error! Access denied: you need (at
-
慢日志显示SQL语句扫描行数为0 - 云数据库 GaussDB(for MySQL)
慢日志显示SQL语句扫描行数为0 场景描述 查询慢日志中记录SQL执行65秒,但是扫描行数为0。 原因分析 被中断的查询超过慢日志设置阈值也会记录慢日志,但是所记录的扫描行数为0。客户JDBC连接设置了查询超时: 解决方案 优化SQL或者将sockTimeOut设置合理值。 父主题:
-
使用mysqlbinlog工具获取binlog - 云数据库 GaussDB(for MySQL)
使用mysqlbinlog工具获取binlog 本文以从弹性云服务器ECS上拉取为例,其他环境下方法类似。 在ECS上安装MySQL客户端,详情请参考安装MySQL客户端。 GaussDB(for MySQL)兼容社区MySQL 8.0及以上版本,请勿安装8.0以下版本的版本的客户端。
-
特性支持场景 - 云数据库 GaussDB(for MySQL)
特性支持场景 并行查询支持以下场景: 支持全表扫描、索引扫描、索引范围扫描、索引逆序扫描、索引点查询、索引下推等。 支持单表查询、多表JOIN、视图view、子查询,部分CTE查询等。 支持多种JOIN算法,包括:BNL Join、BKA Join、HASH Join、Nested
-
索引规范 - 云数据库 GaussDB(for MySQL)
users WHERE u_name LIKE ‘%hk’)或者全模糊,避免从索引扫描退化为全表扫描,如果需要请在应用层解决。 索引文件具有B-tree的最左前缀匹配特性,如果左边的值未确定,那么无法使用此索引。 利用覆盖索引来进行查询操作,避免回表,但是覆盖索引加的字段不能太多,要兼顾写性能。
-
使用规范 - 云数据库 GaussDB(for MySQL)
使用规范 HTAP实时分析有较好的查询性能,单次查询最大会利用一半的CPU,所以并发度建议100以下。 为达到较好性能,可以利用如下手段对查询进行优化: 减少无效的计算,去除SQL中不用的字段,避免用SELECT *,简化SQL。 去除无用的列,若结果使用到全部列,则相对行存无法达到优化效果。
-
GaussDB(for MySQL)安全最佳实践 - 云数据库 GaussDB(for MySQL)
B(for MySQL)暴露给不可信第三方。详情请参见设置安全组规则。 建议使用非默认端口,避免端口被扫描攻击 GaussDB(for MySQL)默认端口为3306,容易被扫描攻击,建议将端口设置为非默认端口。详情请参见修改数据库端口。 定期修改管理员账号密码,防止账号被盗用。
-
CPU使用率高问题排查与优化 - 云数据库 GaussDB(for MySQL)
InnoDB逻辑读速率 登录实例,查看实话会话,发现大量会话在执行SELECT COUNT(*)。 EXPLAIN确认该SQL的执行计划,发现走全表扫描且单条扫描行数在35万+,其并未走索引。 进一步查看该表的表结构,发现该表仅对字段“is_deleted”添加了一个索引“IDX_XX_USER
-
SQL使用规范 - 云数据库 GaussDB(for MySQL)
TABLE不能和其它DML写在同一个事务里。 尽量不要使用负向查询,避免全表扫描。使用负向查询是指使用负向运算符,如:NOT, !=, <>, NOT EXISTS, NOT IN以及NOT LIKE等。 如果使用负向查询,无法利用索引结构做二分查找,只能做全表扫描。 避免对三个表以上执行JOIN连接。需要JOIN的字段,数据类型必须保持一致。
-
清理表的数据碎片 - 云数据库 GaussDB(for MySQL)
表碎片率过高会导致数据库中存在大量未使用的空间,这些空间无法重复利用,从而浪费磁盘空间。 查询优化不佳 表碎片率过高会导致优化器无法正确及有效地利用索引,从而影响执行计划的选择,导致查询性能下降。 SQL执行效率降低 表碎片率过高会导致数据库执行SQL时需要花费额外的时间进行I/O扫描及整理碎片,导致查询和更新操作变慢,响应时间变长。
-
使用mysqldump迁移GaussDB(for MySQL)数据 - 云数据库 GaussDB(for MySQL)
使用mysqldump迁移GaussDB(for MySQL)数据 对于mysqlpump工具,由于在并行备份场景有coredump问题,不建议您使用,推荐您使用mysqldump工具迁移。 迁移准备 GaussDB(for MySQL)支持开启公网访问功能,通过弹性公网IP进行
-
测试方法 - 云数据库 GaussDB(for MySQL)
测试方法 使用TPCH测试工具测试并行查询对22条Query的性能提升情况: 测试工具:TPCH 规格配置:32U256G 内核版本:2.0.26.1 并行线程数:16 测试数据量:100G 操作步骤 生成测试数据。 请在https://github.com/electrum/t
-
什么是HTAP - 云数据库 GaussDB(for MySQL)
Analytical Process,混合事务和分析处理),HTAP实时分析是基于开源Clickhouse进行深度二次开发的版本。采用列式存储引擎,利用SIMD(Single Instrnction Multiple Data)并行计算技术,针对海量数据的分析场景,尤其是大宽表的场景下,查询性能提升尤为显著。
-
Statement Outline - 云数据库 GaussDB(for MySQL)
Outline MySQL数据库实例运行过程中,SQL语句的执行计划经常会发生改变,导致数据库不稳定。GaussDB(for MySQL) 设计了一套利用 MySQL Optimizer/Index hint 来稳定执行计划的方法,称为 Statement outline,并提供了一组管理接口方便使用(dbms_outln