检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
小表、维度表。 规则2.10 创建表时必须选择正确的存储方式 违反规范的影响: 行存表使用不当导致查询场景性能差,资源过载。 列存表使用不当导致CU膨胀,性能差,资源过载。 方案建议: 创建表时通过orientation参数显式指定表的存储类型,存储类型的选择原则如下表所示。
LIKE 表克隆 MySQL数据库中,可以使用CREATE TABLE .. LIKE ..方式克隆旧表结构创建新表。GaussDB(DWS)也支持这种建表方式。DSC工具迁移时会添加额外的表属性信息。 输入示例 1 2 3 4 5 6 7 8 CREATE TABLE IF NOT
小表、维度表。 规则2.10 创建表时必须选择正确的存储方式 违反规范的影响: 行存表使用不当导致查询场景性能差,资源过载。 列存表使用不当导致CU膨胀,性能差,资源过载。 方案建议: 创建表时通过orientation参数显式指定表的存储类型,存储类型的选择原则如下表所示。
GaussDB(DWS) Database和Schema设计规则 GaussDB(DWS)中可以使用Database和Schema实现业务的隔离,两者区别在于Database的隔离更加彻底,各个Database之间共享资源极少,可实现连接隔离、权限隔离等,Database之间无法直接互访。
TRUNCATE 删除表 MySQL在使用TRUNCATE语句删除表数据时可以省略“TABLE”关键字,GaussDB(DWS)不支持这种用法。此外,DSC工具在做迁移TRUNCATE语句时会添加“CONTINUE IDENTITY RESTRICT”关键字。 输入示例 1 2 TRUNCATE
函数和表达式 概述 由于MySQL中的函数与表达式,在GaussDB(DWS)中不存在或者存在一定的差异,DSC工具会根据GaussDB(DWS)的支持情况做相应迁移。(兼容ADB for MySQL的语法支持) 类型对照 表1 类型对照表 MySQL/ADB函数类型 描述 MySQL
CHANGE修改列 CHECK约束 DROP删除表 LIKE 表克隆 MODIFY修改列 TRUNCATE 删除表 ROUNDROBIN表 RENAME 重命名表名 设置与清除列默认值 字段名重命名 行列存压缩 添加与删除列 父主题: MySQL语法迁移
唯一约束 【关注】行存表与列存表都支持唯一约束。 【建议】从命名上明确标识唯一约束,例如,命名为“UNI+构成字段”。 主键约束 【关注】行存表与列存表都支持主键约束。 【建议】从命名上明确标识主键约束,例如,将主键约束命名为 “PK+字段名”。 检查约束 【关注】行存表支持检查约束,而列存表不支持。
层面的设计与开发。 术语定义 规则:数据库设计与开发时必须遵守的约定。 建议:数据库设计与开发时建议考虑的约定。 说明:对规则/建议进行的详细说明和解释。 总体开发设计规范 下表是GaussDB(DWS)开发过程中需遵循的开发设计规范全集列表,可以单击链接跳转到对应的规则下了解详细说明。
GaussDB(DWS)数据库对象设计规则 GaussDB(DWS) Database和Schema设计规则 GaussDB(DWS)表设计规则 GaussDB(DWS)字段设计规则 GaussDB(DWS)约束设计规则 GaussDB(DWS)视图和关联表设计规则 父主题: GaussDB(DWS)各对象设计详细规则
RENAME 重命名表名 MySQL重命名表名的语句与GaussDB(DWS)有一些差异。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。 工具暂不支持原表名附有DATABASE(SCHEMA)的场景。 MySQL通过RENAME TABLE语句修改表名。 输入示例 1
DROP删除表 GaussDB(DWS)与MySQL都支持使用DROP语句删除表,但GaussDB(DWS)不支持在DROP语句中使用RESTRICT | CASCADE关键字。DSC工具迁移时会将上述关键字移除。 输入示例 1 2 3 4 5 6 7 CREATE TABLE IF
COMMENT 在MySQL中,COMMENT对表进行注释。GaussDB(DWS)支持该属性修改表定义信息,DSC工具迁移时会添加额外的表属性信息。 输入示例 1 2 3 4 5 6 7 8 CREATE TABLE `public`.`runoob_alter_test`(
CHECKSUM 在MySQL中,CHECKSUM表示对所有的行维护实时校验和。GaussDB(DWS)不支持该属性修改表定义信息,DSC迁移时会将该关键字删除。 输入示例 1 2 3 4 5 6 7 8 9 10 11 12 CREATE TABLE `public`
MySQL语法迁移 支持的关键词和特性 数据类型 函数和表达式 表(可选参数、操作) 索引 注释 数据库 数据操作语句(DML) 事务管理和数据库管理 父主题: DSC
层面的设计与开发。 术语定义 规则:数据库设计与开发时必须遵守的约定。 建议:数据库设计与开发时建议考虑的约定。 说明:对规则/建议进行的详细说明和解释。 总体开发设计规范 下表是GaussDB(DWS)开发过程中需遵循的开发设计规范全集列表,可以单击链接跳转到对应的规则下了解详细说明。
DELAY_KEY_WRITE DELAY_KEY_WRITE只对MyISAM引擎表有作用,根据DELAY_KEY_WRITE的值来延迟更新直至表关闭。GaussDB(DWS)不支持该属性修改表定义信息,DSC迁移时会将该属性删除。 输入示例 1 2 3 4 5 6 7 8 CREATE
ROUNDROBIN表 GaussDB(DWS)支持建立roundrobin表,根据实际需要设置表1中的参数table.type进行配置。设置table.type=ROUND-ROBIN。 输入示例 1 2 3 4 5 CREATE TABLE charge_snapshot (
null约束时,如果无default值,在MySQL中会插入默认值,而在GaussDB(DWS)中插入到非空表时会报错,因此针对常见数据类型,alter table add column包含not null约束补充默认default值(详情见表1)。 输入示例 1 2 3 4
列存表更新失败或多次更新后出现表膨胀 问题现象 对列存表更新或UPDATE会失败。 多次对列存表UPDATE,发现表大小膨胀了十多倍。 原因分析 列存表不支持并发更新。 列存表的更新操作,空间不会回收旧记录。 处理方法 方法一 该处理方法仅8.1.3及以上集群版本支持。 登录GaussDB(DWS)