检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
存储引擎体系架构概述 静态编译架构 通用数据库服务层 父主题: 存储引擎体系架构
Ustore存储引擎 Ustore简介 存储格式 Ustore事务模型 闪回恢复 常用视图工具 常见问题及定位手段 父主题: 存储引擎
特性约束 类别 特性 是否支持 事务 Serializable × 在事务块中对分区表执行DDL操作 × 可扩展性 Hashbucket × SQL Table sampling/物化视图/键值锁 × 父主题: Ustore特性与规格
Ustore事务模型 GaussDB Kernel事务基础: 事务启动时不会自动分配XID,该事务中的第一条DML/DDL语句运行时才会真正为该事务分配XID。 事务结束时,会产生代表事务提交状态的CLOG(Commit Log),CLOG共有四种状态:事务运行中、事务提交、事务同步回滚
常用视图工具 视图类型 类型 功能描述 使用场景 函数名称 解析 全类型 用于解析指定表页面,并返回存放解析内容的路径。 查看页面信息。 查看元组(非用户数据)信息。 页面或者元组损坏。 元组可见性问题。 校验报错问题。 gs_parse_page_bypath 索引回收队列(URQ
常见问题及定位手段 snapshot too old storage test error 备机读业务报错:"UBTreeSearch::read_page has conflict with recovery, please try again later" 父主题: Ustore
注释 表1 comment 序号 Oracle数据库 GaussDB数据库 差异 1 斜杠和星号(/*) 支持 - 2 两个连字符(--) 支持 - 3 COMMENT命令 支持 - 4 HINT 支持,有差异 GaussDB不支持'--+'hint形式。 具体信息请参见《开发指南
PL/SQL语言 GaussDB数据库基本兼容的PL/SQL操作符、表达式,控制语句、集合和record等等,不支持预定义的PL/SQL常量和类型、子类型等。 PL/SQL基本语法 数据类型兼容性 控制语句 集合和Record 静态SQL 动态SQL Trigger
格式模型 表1 格式 序号 Oracle数据库 GaussDB数据库 差异 1 数字格式 支持,有差异 GaussDB仅在参数a_format_version值为10c和a_format_dev_version值为s1的情况下,支持$、C、TM、TM9、TME、U格式。同时在该参数下
PL/SQL基本语法 表1 PL/SQL操作符 序号 Oracle数据库 GaussDB数据库 1 + 支持 2 := 支持 3 => 支持 4 % 支持 5 ' 支持 6 . 支持 7 || 支持 8 / 支持 9 ** 不支持 10 ( 支持 11 ) 支持 12 : 支持 13
数据类型兼容性 表1 其他PL/SQL数据类型 序号 Oracle数据库 GaussDB数据库 差异 1 CHARACTER 支持,有差异 GaussDB中字节长度限制为:1~10485760。 Oracle中字节长度限制为:1~32767。 2 VARCHAR 支持,有差异 GaussDB
数据库对象名称和限定符 表1 命名规则 序号 Oracle数据库 GaussDB数据库 差异 1 数据库对象命名规则 支持,有差异 GaussDB默认小写。 2 模式对象命名规则 支持 - 父主题: SQL的基本元素
SQL的基本元素 数据类型 数据类型比较规则 字面量 格式模型 空值 注释 数据库对象 数据库对象名称和限定符 SQL语句中的引用架构对象和部件的语法
静态SQL 表1 静态查询 SQL语句 序号 Oracle数据库 GaussDB数据库 差异 1 SELECT 支持,有差异 GaussDB和Oracle在某些场景下有不同。 GaussDB中FOR SHARE对检索出来的行加共享锁,不同事务的共享锁不会互相阻塞。若数据在一个事务中被
空值 表1 空值 序号 Oracle数据库 GaussDB数据库 1 IS NULL和IS NOT NULL 支持 2 NULLS in conditions 支持 父主题: SQL的基本元素
PL/SQL基本语法 表1 PL/SQL操作符 序号 Oracle数据库 GaussDB数据库 1 + 支持 2 := 支持 3 => 支持 4 % 支持 5 ' 支持 6 . 支持 7 || 支持 8 / 支持 9 ** 不支持 10 ( 支持 11 ) 支持 12 : 支持 13
数据类型 数值数据类型 日期与时间数据类型 字符串数据类型 二进制数据类型 JSON数据类型 数据类型支持的属性 数据类型转换 父主题: MySQL兼容性MySQL模式
二进制数据类型 表1 二进制数据类型 MySQL数据库 GaussDB数据库 差异 BINARY[(M)] 不支持 - VARBINARY(M) 不支持 - TINYBLOB 支持,存在差异 取值范围:GaussDB中该类型由BYTEA类型映射得来,长度不能超过1GB,超过长度限制后会报错
JSON数据类型 表1 JSON数据类型 MySQL数据库 GaussDB数据库 差异 JSON 支持,存在差异 GaussDB数据库MySQL兼容性B模式中的JSON类型与GaussDB数据库原生的JSON类型行为一致,与MySQL行为差异较大,此处不再逐个列出。 GaussDB
数据类型支持的属性 表1 数据类型支持的属性 MySQL数据库 GaussDB数据库 NULL 支持 NOT NULL 支持 DEFAULT 支持 ON UPDATE 支持 PRIMARY KEY 支持 CHARACTER SET name 支持 COLLATE name 支持 父主题