华为云用户手册

  • current_schemas(boolean) 描述:current_schemas(boolean)返回搜索路径中所有模式名字的数组。布尔选项决定像pg_catalog这样隐含包含的系统模式是否包含在返回的搜索路径中。 返回值类型:name[] 示例: 1 2 3 4 5 SELECT current_schemas(true); current_schemas --------------------- {pg_catalog,public} (1 row) 搜索路径可以通过运行时设置更改。命令是: 1 SET search_path TO schema [, schema, ...]
  • pg_postmaster_start_time() 描述:服务器启动时间。pg_postmaster_start_time返回服务器启动时的timestamp with time zone。 返回值类型:timestamp with time zone 示例: 1 2 3 4 5 SELECT pg_postmaster_start_time(); pg_postmaster_start_time ------------------------------ 2017-08-30 16:02:54.99854+08 (1 row)
  • current_schema[()] 描述:current_schema返回在搜索路径中第一个顺位有效的模式名。(如果搜索路径为空则返回NULL,没有有效的模式名也返回NULL)。如果创建表或者其他命名对象时没有声明目标模式,则将使用这些对象的模式。 返回值类型:name 示例: 1 2 3 4 5 SELECT current_schema(); current_schema ---------------- public (1 row)
  • pg_conf_load_time() 描述:配置加载时间。pg_conf_load_time返回最后加载服务器配置文件的时间戳。 返回值类型:timestamp with time zone 示例: 1 2 3 4 5 SELECT pg_conf_load_time(); pg_conf_load_time ------------------------------ 2017-09-01 16:05:23.89868+08 (1 row)
  • pgxc_version() 描述:Postgres-XC版本信息。 返回值类型:text 示例: 1 2 3 4 5 SELECT pgxc_version(); pgxc_version ------------------------------------------------------------------------------------------------------------- Postgres-XC 1.1 on x86_64-unknown-linux-gnu, based on PostgreSQL 9.2.4, compiled by g++ (GCC) 5.4.0, 64-bit (1 row)
  • current_user 描述:当前执行环境下的用户名。current_user是用于权限检查的用户标识。通常用来表示会话用户,但是可以通过SET ROLE改变这个设置。在函数执行的过程中随着属性SECURITY DEFINER的改变,其值也会改变。 返回值类型:name 示例: 1 2 3 4 5 SELECT current_user; current_user -------------- dbadmin (1 row)
  • pg_my_temp_schema() 描述:pg_my_temp_schema返回当前会话中临时模式的OID,如果不存在(没有创建临时表)的话则返回0。如果给定的OID是其它会话中临时模式的OID,pg_is_other_temp_schema则返回true。 返回值类型:oid 示例: 1 2 3 4 5 SELECT pg_my_temp_schema(); pg_my_temp_schema ------------------- 0 (1 row)
  • version() 描述:版本信息。version返回一个描述服务器版本信息的字符串。 返回值类型:text 示例: 1 2 3 4 5 SELECT version(); version --------------------------------------------------------------------------------------------------------------------------------------- PostgreSQL 9.2.4 gsql ((GaussDB 8.2.1 build 39137c2d) compiled at 2022-09-23 15:43:11 commit 3629 last mr 5138 release) on x86_64-unknown-linux-gnu, compiled by g++ (GCC) 5.4.0, 64-bit (1 row)
  • SQL发展简史 SQL发展简史如下: 1986年,ANSI X3.135-1986,ISO/IEC 9075:1986,SQL-86 1989年,ANSI X3.135-1989,ISO/IEC 9075:1989,SQL-89 1992年,ANSI X3.135-1992,ISO/IEC 9075:1992,SQL-92(SQL2) 1999年,ISO/IEC 9075:1999,SQL:1999(SQL3) 2003年,ISO/IEC 9075:2003,SQL:2003(SQL4) 2011年,ISO/IEC 9075:200N,SQL:2011(SQL5)
  • 什么是SQL SQL是用于访问和处理数据库的标准计算机语言。 SQL提供了各种任务的语句,包括: 查询数据。 在表中插入,更新和删除行。 创建,替换,更改和删除对象。 控制对数据库及其对象的访问。 保证数据库的一致性和完整性。 SQL语言由用于处理数据库和数据库对象的命令和函数组成。该语言还会强制实施有关数据类型、表达式和文本使用的规则。因此在SQL参考章节,除了SQL语法参考外,还会看到有关数据类型、表达式、函数和操作符等信息。
  • SQL语法文本格式约定 为了方便对语法使用的理解,在文档中对SQL语法文本按如下格式进行表述。 格式 意义 大写 语法关键字(语句中保持不变、必须与语法格式一致的部分)采用大写表示。 小写 参数(语句中必须由实际值进行替代的部分)采用小写表示。 [ ] 可选语法项。表示用“[ ]”括起来的部分是可选的。 { } 必选语法项。 ... 表示前面的元素可重复出现。 [ x | y | ... ] 表示从两个或多个选项中选取一个或者不选。 { x | y | ... } 表示从两个或多个选项中选取一个。 [x | y | ... ] [ ... ] 表示可选多个参数或者不选,如果选择多个参数,则参数之间用空格分隔。 [ x | y | ... ] [ ,... ] 表示可选多个参数或者不选,如果选择多个参数,则参数之间用逗号分隔。 { x | y | ... } [ ... ] 表示可选多个参数,至少选一个,如果选择多个参数,则参数之间以空格分隔。 { x | y | ... } [ ,... ] 表示可选多个参数,至少选一个,如果选择多个参数,则参数之间用逗号分隔。
  • LOCAL_ACTIVE_SESSION LOCAL_ACTIVE_SESSION视图显示本节点上的ACTIVE SESSION PROFILE内存中的样本。 表1 LOCAL_ACTIVE_SESSION字段 名称 类型 描述 sampleid bigint 采样ID。 sample_time timestamp with time zone 采样的时间。 need_flush_sample boolean 该样本是否需要刷新到磁盘。 databaseid oid 数据库ID thread_id bigint 线程的ID。 sessionid bigint 会话的ID。 start_time timestamp with time zone 会话的启动时间。 event text 具体的事件名称。 lwtid integer 当前线程的轻量级线程号。 psessionid bigint streaming线程的父线程。 tlevel integer streaming线程的层级。与执行计划的层级(id)相对应。 smpid integer smp执行模式下并行线程的并行编号。 userid oid session用户的id。 application_name text 应用的名称。 client_addr inet client端的地址。 client_hostname text client端的名称。 client_port integer 客户端用于与后端通讯的TCP端口号。 query_id bigint debug query id unique_query_id bigint unique query id user_id oid unique query的key中的user_id。 cn_id integer cn id,在DN上表示该unique sql来之该CN节点,unique query的key中的cn_id。 unique_query text 规范化后的UniqueSQL文本串。 locktag text 会话等待锁信息,可通过locktag_decode解析。 lockmode text 会话等待锁模式。 block_sessionid bigint 如果会话正在等待锁,阻塞该会话获取锁的会话标识。 final_block_sessionid bigint 表示源头阻塞会话id。 wait_status text 描述event列的更多详细信息。 global_sessionid text 全局会话ID。 xact_start_time timestamp with time zone 事务开始时间。 query_start_time timestamp with time zone 语句开始执行时间。 state text 当前语句状态。 可能取值为:active, idle in transaction, fastpath function call, idle in transaction (aborted), disabled, retrying。 父主题: Session/Thread
  • 常见问题处理 connect to server failed: no such file or directory 此问题可能的原因: 配置了错误的/不可达的数据库地址,或者端口 请检查数据源配置中的Servername及Port配置项。 服务器侦听不正确 如果确认Servername及Port配置正确,请根据“操作步骤”中数据库服务器的相关配置,确保数据库侦听了合适的网卡及端口。 防火墙及网闸设备 请确认防火墙设置,将数据库的通信端口添加到可信端口中。 如果有网闸设备,请确认一下相关的设置。 The password-stored method is not supported. 此问题可能原因: 数据源中未配置sslmode配置项,请调整此项至allow或以上级别,允许SSL连接,此选项的更多说明,请参见表1。 authentication method 10 not supported. 使用开源客户端碰到此问题,可能原因: 数据库中存储的口令校验只存储了SHA256格式哈希,而开源客户端只识别MD5校验,双方校验方法不匹配报错。 数据库并不存储用户口令,只存储用户口令的哈希码。 当用户更新用户口令或者新建用户时,数据库会同时存储两种格式的哈希码,这时将兼容开源的认证协议。 当老版本升级到新版本时,由于哈希的不可逆性,所以数据库无法还原用户口令,进而生成新格式的哈希,所以仍然只保留了SHA256格式的哈希,导致仍然无法使用MD5做口令认证。 MD5加密算法安全性低,存在安全风险,建议使用更安全的加密算法。 要解决该问题,可以更新用户口令(请参见ALTER USER),或者新建一个用户(请参见CREATE USER),值为于同等权限,使用新用户连接数据库。 unsupported frontend protocol 3.51: server supports 1.0 to 3.0 目标数据库版本过低,或者目标数据库为开源数据库。请使用对应版本的数据库驱动连接目标数据库。 FATAL: GSS authentication method is not allowed because XXXX user password is not disabled. 目标CN的pg_hba.conf里配置了当前客户端IP使用"gss"方式来做认证,该认证算法不支持用作客户端的身份认证,请修改到"sha256"后再试。配置方法见5。
  • LOCAL_ACTIVE_SESSION LOCAL_ACTIVE_SESSION视图显示本节点上的ACTIVE SESSION PROFILE内存中的样本。 表1 LOCAL_ACTIVE_SESSION字段 名称 类型 描述 sampleid bigint 采样ID。 sample_time timestamp with time zone 采样的时间。 need_flush_sample boolean 该样本是否需要刷新到磁盘。 databaseid oid 数据库ID thread_id bigint 线程的ID。 sessionid bigint 会话的ID。 start_time timestamp with time zone 会话的启动时间。 event text 具体的事件名称。 lwtid integer 当前线程的轻量级线程号。 psessionid bigint streaming线程的父线程。 tlevel integer streaming线程的层级。与执行计划的层级(id)相对应。 smpid integer smp执行模式下并行线程的并行编号。 userid oid session用户的id。 application_name text 应用的名称。 client_addr inet client端的地址。 client_hostname text client端的名称。 client_port integer 客户端用于与后端通讯的TCP端口号。 query_id bigint debug query id unique_query_id bigint unique query id user_id oid unique query的key中的user_id。 cn_id integer cn id,在DN上表示下发该unique sql的节点id,unique query的key中的cn_id。 unique_query text 规范化后的UniqueSQL文本串。 locktag text 会话等待锁信息,可通过locktag_decode解析。 lockmode text 会话等待锁模式。 block_sessionid bigint 如果会话正在等待锁,阻塞该会话获取锁的会话标识。 final_block_sessionid bigint 表示源头阻塞会话id。 wait_status text 描述event列的更多详细信息。 global_sessionid text 全局会话ID xact_start_time timestamp with time zone 事务开始时间。 query_start_time timestamp with time zone 语句开始执行时间。 state text 当前语句状态。 可能取值为:active, idle in transaction, fastpath function call, idle in transaction (aborted), disabled, retrying。 父主题: Session/Thread
  • 常见问题处理 connect to server failed: no such file or directory 此问题可能的原因: 配置了错误的/不可达的数据库地址,或者端口 请检查数据源配置中的Servername及Port配置项。 服务器侦听不正确 如果确认Servername及Port配置正确,请根据“操作步骤”中数据库服务器的相关配置,确保数据库侦听了合适的网卡及端口。 防火墙及网闸设备 请确认防火墙设置,将数据库的通信端口添加到可信端口中。 如果有网闸设备,请确认一下相关的设置。 The password-stored method is not supported. 此问题可能原因: 数据源中未配置sslmode配置项,请调整此项至allow或以上级别,允许SSL连接,此选项的更多说明,请参见表1。 authentication method 10 not supported. 使用开源客户端碰到此问题,可能原因: 数据库中存储的口令校验只存储了SHA256格式哈希,而开源客户端只识别MD5校验,双方校验方法不匹配报错。 数据库并不存储用户口令,只存储用户口令的哈希码。 当用户更新用户口令或者新建用户时,数据库会同时存储两种格式的哈希码,这时将兼容开源的认证协议。 当老版本升级到新版本时,由于哈希的不可逆性,所以数据库无法还原用户口令,进而生成新格式的哈希,所以仍然只保留了SHA256格式的哈希,导致仍然无法使用MD5做口令认证。 MD5加密算法安全性低,存在安全风险,建议使用更安全的加密算法。 要解决该问题,可以更新用户口令(请参见ALTER USER),或者新建一个用户(请参见CREATE USER),赋于同等权限,使用新用户连接数据库。 unsupported frontend protocol 3.51: server supports 1.0 to 3.0 目标数据库版本过低,或者目标数据库为开源数据库。请使用对应版本的数据库驱动连接目标数据库。 FATAL: GSS authentication method is not allowed because XXXX user password is not disabled. 目标DN的pg_hba.conf里配置了当前客户端IP使用"gss"方式来做认证,该认证算法不支持用作客户端的身份认证,请修改到"sha256"后再试。配置方法见5。
  • 使用GaussDB要注意些什么 实例的操作系统,对用户都不可见,这意味着,只允许用户应用程序访问数据库对应的IP地址和端口。 对象存储服务(Object Storage Service,简称OBS)上的备份文件以及云数据库 GaussDB服务使用的弹性云服务器(Elastic Cloud Server,简称ECS),都对用户不可见,它们只对云数据库GaussDB服务的后台管理系统可见。 查看实例列表时请确保显示的区域与购买实例时选择的区域一致。 申请云数据库GaussDB实例后,您不需要进行数据库的基础运维(比如高可用、安全补丁等),但是您还需要重点关注以下事情: 云数据库GaussDB实例的CPU、IOPS、空间是否足够,如果不够需要变更规格或者扩容。 云数据库GaussDB实例是否存在性能问题,是否有大量的慢SQL,SQL语句是否需要优化,是否有多余的索引或者缺失的索引等。 父主题: 产品咨询
  • 数据库实例被锁怎么处理? 在“实例管理”页面,选择指定的实例,单击实例名称,进入实例基本信息页面。 在左侧导航栏单击“参数管理”,进入参数修改页面。 修改password_lock_time=0、failed_login_attempts=0,解除数据库锁定。 为了数据库安全,密码重置完成后,请将参数修改为默认值。 在“基本信息”页签,在“数据库信息”模块的“管理员账户名”处,单击“重置密码”。 在“重置密码”弹框,输入新密码及确认密码。 修改完成后password_lock_time和failed_login_attempts修改为默认值。 父主题: 数据库基本使用
  • 问题分析 主要从以下几个方面考虑: 排除数据库实例异常 例如:数据库系统故障,实例状态异常,实例或表被锁定。 (常见)使用正确的客户端连接方式 内网连接需要GaussDB与ECS实例必须在同一区域、VPC。 公网连接需要购买或使用已有EIP,并对GaussDB实例绑定该EIP 。 排除连接命令错误 例如:连接地址错误、端口参数配置错误、用户名和密码错误。 (常见)排除网络不通 内网访问 确认ECS与GaussDB是否在同一个区域,VPC。 检查安全组规则。 安全组外访问安全组内的GaussDB实例时,需要为安全组添加相应的入方向规则。 在ECS上测试是否可以正常连接到GaussDB实例地址的端口。 公网访问 检查安全组规则。 安全组外访问安全组内的GaussDB实例时,需要为安全组添加相应的入方向规则。 检查网络ACL规则。 相同区域主机进行ping测试。 (常见)排除实例的磁盘满的情况 当实例处于“磁盘空间满”状态时,影响数据的正常读写操作。 连接失败的常见报错 包含连接失败的常见报错,以及相应的解决方法。
  • 解决方案 随着业务数据的增加,原来申请的数据库磁盘容量可能会不足,建议用户进行磁盘扩容,确保磁盘空间足够。 如果原有规格的磁盘已是最大,请先升级规格。 针对数据空间过大,可以删除无用的历史表数据。 如果实例变为只读状态,您需要先联系客服解除只读状态;如果实例非只读状态,则可以直接执行删除操作。 可在业务低峰期对碎片率高的表执行optimize优化,以便释放空间: 清理整张表使用DROP或TRUNCATE操作;删除部分数据,使用DELETE操作。 如果是日志文件占用过多,可以通过清理日志,来释放磁盘空间。 针对大量排序查询导致的临时文件过大,建议优化SQL查询。
  • 修订记录 发布日期 修改说明 2023-10-10 新增以下内容: 产品咨询。 新增使用GaussDB要注意些什么。 新增什么是GaussDB实例可用性。 新增GaussDB实例是否会受其他用户实例的影响。 新增为何使用了GaussDB后网站登录较慢。 新增多台弹性云服务器云主机是否可以使用同一个GaussDB数据库。 新增购买GaussDB实例后可以对磁盘进行加密吗。 新增GaussDB购买磁盘加密后,备份文件会加密吗。 新增不同GaussDB实例的CPU和内存是否共享。 新增GaussDB实例内能运行多少个数据库。 资源及磁盘管理。 新增哪些内容会占用用户所购买创建的GaussDB实例空间。 新增DDL操作对磁盘空间的要求。 数据库连接。 新增GaussDB实例连接失败怎么办。 新增外部服务器能否访问GaussDB数据库吗。 新增如何创建和连接ECS。 新增内网方式下ECS无法连接GaussDB实例的原因。 新增客户端问题导致连接失败。 新增服务端问题导致连接失败。 新增应用程序怎么访问VPC中的GaussDB实例。 新增应用程序是否需要支持自动重连数据库。 新增绑定公网IP后无法ping通的解决方案。 新增GaussDB跨地域内网能访问吗。 新增ECS内网访问GaussDB,是否受带宽限制。 新增为什么重置密码后新密码没有生效。 新增ECS和GaussDB部署在不同的VPC,网络不通怎么办。 数据库权限。 新增使用DAS登录数据库是否有人数限制,密码多次输入错误有无锁死机制。 数据库存储。 新增GaussDB使用的什么存储。 新增数据超过了GaussDB实例的最大存储容量怎么办。 新增如何查看GaussDB的存储空间使用情况。 数据库基本使用。 新增如何通过数据管理服务(DAS)查询SQL语句。 新增导出SQL查询结果到Excel出现乱码。 新增误删数据库root账号怎么办?。 备份与恢复。 新增GaussDB能够保存多长时间的备份。 新增如何清理云数据库GaussDB的备份空间。 新增数据库在备份时间段中是否可用。 新增GaussDB的备份是如何收费的。 新增如何查看GaussDB备份空间使用情况。 新增如何将GaussDB数据库备份到弹性云服务器上。 新增GaussDB实例删除后,备份是否会保留。 新增如何找回误删除数据库和数据表。 新增为什么自动备份会失败。 新增为什么数据表会丢失或数据被删除。 新增如何将本地数据库备份恢复到云数据库GaussDB。 新增GaussDB是否支持恢复单表信息。 新增备份文件是否支持转储至用户的OBS桶。 新增GaussDB是否支持表级备份到指定OBS。 新增备份策略如何删除。 数据库监控。 新增用户平时需要关注实例的哪些监控指标。 新增GaussDB实例内存使用率指标的计算方法。 扩容及规格变更。 新增GaussDB实例在扩容和规格变更期间是否一直可用。 新增GaussDB实例是否支持更换VPC。 数据库参数修改。 新增如何修改时区。 新增GaussDB密码过期策略。 日志管理 新增如何查看GaussDB执行过的所有SQL日志。 新增如何查看GaussDB数据库的死锁日志。 网络安全 新增GaussDB有哪些安全保障措施。 新增如何防止任意源连接数据库。 新增访问GaussDB实例应该如何配置安全组。 新增如何管理GaussDB的安全性。 2023-04-20 新增GaussDB与PostgreSQL的关系。
  • 数据库对象 表16 schema对象 序号 Oracle数据库 GaussDB数据库 差异 1 分析视图 不支持 - 2 属性维度 不支持 - 3 集群 支持 - 4 约束 支持 - 5 数据库链接 支持 - 6 数据库触发器 支持 - 7 尺寸 支持 - 8 外部过程库 不支持 - 9 分层结构 不支持 - 10 索引组织表 不支持 - 11 索引 支持 - 12 索引类型 不支持 - 13 java类 不支持 - 14 java资源 不支持 - 15 java源码 不支持 - 16 join groups 不支持 - 17 物化视图 支持 - 18 物化视图日志 不支持 - 19 挖掘模型 不支持 - 20 对象表 不支持 - 21 对象类型 不支持 - 22 对象视图 不支持 - 23 operators 支持 - 24 包 支持 - 25 序列 支持 - 26 存储函数 支持 - 27 存储过程 支持 - 28 同义词 支持,有差异 Oracle数据库的数据库对象在同一namespace内不能重名;GaussDB内同一namespace内同义词可与表、视图、函数、package重名,重名时,优先访问本名对象,未寻找到本名对象时才会寻找同义词指向的对象。 29 表 支持 - 30 视图 支持 - 31 zone map 不支持 - 表17 nonschema对象 序号 Oracle数据库 GaussDB数据库 1 上下文 不支持 2 目录 支持 3 版本 不支持 4 闪回存档 不支持 5 锁定配置文件 不支持 6 配置文件 不支持 7 还原点 支持 8 角色 支持 9 回滚段 不支持 10 表空间 支持 11 表空间集 不支持 12 统一审计策略 支持 13 用户 支持
  • 数据类型 表1 数值类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 NUMBER [ ( p [ , s ] ) ] 支持,有差异 精度和实现存在差异。 2 FLOAT [ ( p ) ] 支持 - 3 LONG 不支持 - 4 BINARY_FLOAT 不支持 - 5 BINARY_DOUBLE 支持 - 表2 日期时间类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 DATE 支持,有差异 精度有差异。 2 TIMESTAMP [ ( fractional_seconds_precision ) ] 支持 - 3 TIMESTAMP [ ( fractional_seconds_precision ) ] WITH TIME ZONE 支持,有差异 GaussDB的timestamptz等价于Oracle的timestampwithloacltimezone,缺少Oracle对应的timestamptz类型。 时区更新:部分国家或地区因为政治、经济、战争等因素经常会更新时区信息, 数据库系统也因此常常需要同步修改时区文件以确保时间内容的正确性。 GaussDB时区类型目前只涉及 timestamp with timezone, 当新的时区文件生效时,不会对已有的老数据进行变更,新数据会随时区文件信息进行同步调整。在这点上和O的同类型数据能力有差异。 4 TIMESTAMP [ ( fractional_seconds_precision ) ] WITH LOCAL TIME ZONE 不支持 - 5 INTERVAL YEAR [ ( year_precision ) ] TO MONTH 支持 - 6 INTERVAL DAY [ ( day_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ] 支持 - 表3 字符类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 VARCHAR2 ( size [ BYTE | CHAR ] ) 支持,有差异 size单位为字节,最大10MB。 2 NVARCHAR2 ( size ) 支持,有差异 VARCHAR2(n)类型的别名。 3 CHAR [ ( size [ BYTE | CHAR ] ) ] 支持,有差异 size单位为字节,最大10MB。 4 NCHAR [ ( size ) ] 支持,有差异 size单位为字节,最大10MB。 5 CLOB 支持,有差异 不支持定位器概念。 6 NCLOB 不支持 - 表4 二进制类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 RAW ( size ) 支持,有差异 size是指字节长度建议值,不会用于校验输入raw类型的字节长度。 2 LONG RAW 不支持 - 3 BLOB 支持,有差异 - 4 BFILE 不支持 - 表5 ROWID类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 ROWID 不支持 - 2 UROWID 不支持 - 表6 用户自定义类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 对象类型 不支持 - 2 REF数据类型 不支持 - 3 可变数组 支持 - 4 嵌套表 支持 - 表7 伪类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 anytype 不支持 - 2 anydata 不支持 - 3 anydataset 不支持 - 表8 xml类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 XMLType 支持,有差异 不支持部分操作。 2 URIType 不支持 - 表9 空间类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 SDO_GEOMETRY 不支持 - 2 SDO_TOPO_GEOMETRY 不支持 - 3 SDO_GEORASTER 不支持 - 表10 锁模式 级别 Oracle锁模式 GaussDB锁模式 备注锁模式 - - NULL GaussDB的NULL表示未被赋予锁,与Oracle的0级锁对应。 0 none INVALID GaussDB的INVALID表示被赋予了非法锁。仅在运行过程中出现了GaussDB无法识别的锁时会被赋予INVALID锁。 1 null AccessShare - 2 RS RowShare - 3 RX RowExclusive - 4 S ShareUpdateExclusive - 5 SRX Share - 6 \ ShareRowExclusive - 7 X Exclusive - 8 \ AccessExclusive -
  • 数据库对象 表16 schema对象 序号 Oracle数据库 GaussDB数据库 差异 1 分析视图 不支持 - 2 属性维度 不支持 - 3 集群 支持 - 4 约束 支持 - 5 数据库链接 支持 - 6 数据库触发器 支持 - 7 尺寸 支持 - 8 外部过程库 不支持 - 9 分层结构 不支持 - 10 索引组织表 不支持 - 11 索引 支持 - 12 索引类型 不支持 - 13 java类 不支持 - 14 java资源 不支持 - 15 java源码 不支持 - 16 join groups 不支持 - 17 物化视图 支持 - 18 物化视图日志 不支持 - 19 挖掘模型 不支持 - 20 对象表 不支持 - 21 对象类型 不支持 - 22 对象视图 不支持 - 23 operators 支持 - 24 包 支持 - 25 序列 支持 - 26 存储函数 支持 - 27 存储过程 支持 - 28 同义词 支持,有差异 Oracle数据库的数据库对象在同一namespace内不能重名。GaussDB同一namespace内同义词可与表、视图、函数、package重名,如果重名,会优先访问本名对象,未寻找到本名对象时才会寻找同义词指向的对象。 29 表 支持 - 30 视图 支持 - 31 zone map 不支持 - 表17 nonschema对象 序号 Oracle数据库 GaussDB数据库 1 上下文 不支持 2 目录 支持 3 版本 不支持 4 闪回存档 不支持 5 锁定配置文件 不支持 6 配置文件 不支持 7 还原点 支持 8 角色 支持 9 回滚段 不支持 10 表空间 支持 11 表空间集 不支持 12 统一审计策略 支持 13 用户 支持
  • 数据类型 表1 数值类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 NUMBER [ ( p [ , s ] ) ] 支持,有差异 精度和实现存在差异。 2 FLOAT [ ( p ) ] 支持 - 3 LONG 不支持 - 4 BINARY_FLOAT 不支持 - 5 BINARY_DOUBLE 支持 - 表2 日期时间类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 DATE 支持,有差异 精度有差异。 2 TIMESTAMP [ ( fractional_seconds_precision ) ] 支持 - 3 TIMESTAMP [ ( fractional_seconds_precision ) ] WITH TIME ZONE 支持,有差异 GaussDB的timestamptz等价于Oracle的timestampwithloacltimezone,缺少Oracle对应的timestamptz类型。 时区更新:部分国家或地区因为政治、经济、战争等因素经常会更新时区信息, 数据库系统也因此常常需要同步修改时区文件以确保时间内容的正确性。 GaussDB时区类型目前只涉及 timestamp with timezone, 当新的时区文件生效时,不会对已有的老数据进行变更,新数据会随时区文件信息进行同步调整。在这点上和O的同类型数据能力有差异。 4 TIMESTAMP [ ( fractional_seconds_precision ) ] WITH LOCAL TIME ZONE 不支持 - 5 INTERVAL YEAR [ ( year_precision ) ] TO MONTH 支持 - 6 INTERVAL DAY [ ( day_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ] 支持 - 表3 字符类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 VARCHAR2 ( size [ BYTE | CHAR ] ) 支持,有差异 size单位为字节,最大10MB。 2 NVARCHAR2 ( size ) 支持,有差异 VARCHAR2(n)类型的别名。 3 CHAR [ ( size [ BYTE | CHAR ] ) ] 支持,有差异 size单位为字节,最大10MB。 4 NCHAR [ ( size ) ] 支持,有差异 size单位为字节,最大10MB。 5 CLOB 支持,有差异 不支持定位器概念。 6 NCLOB 不支持 - 表4 二进制类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 RAW ( size ) 支持,有差异 - 2 LONG RAW 不支持 - 3 BLOB 支持,有差异 - 4 BFILE 不支持 - 表5 ROWID类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 ROWID 不支持 - 2 UROWID 不支持 - 表6 用户自定义类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 对象类型 不支持 - 2 REF数据类型 不支持 - 3 可变数组 支持 - 4 嵌套表 支持 - 表7 伪类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 anytype 不支持 - 2 anydata 不支持 - 3 anydataset 不支持 - 表8 xml类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 XMLType 支持,有差异 不支持部分操作。 2 URIType 不支持 - 表9 空间类型 序号 Oracle数据类型 GaussDB数据库是否支持 差异 1 SDO_GEOMETRY 不支持 - 2 SDO_TOPO_GEOMETRY 不支持 - 3 SDO_GEORASTER 不支持 - 表10 锁模式 级别 Oracle锁模式 GaussDB锁模式 备注 - - NULL GaussDB的NULL表示未被赋予锁,与Oracle的0级锁对应。 0 none INVALID GaussDB的INVALID表示被赋予了非法锁。仅在运行过程中出现了GaussDB无法识别的锁时会被赋予INVALID锁。 1 null AccessShare - 2 RS RowShare - 3 RX RowExclusive - 4 S ShareUpdateExclusive - 5 SRX Share - 6 \ ShareRowExclusive - 7 X Exclusive - 8 \ AccessExclusive -
  • 自定义策略样例 示例1:授权用户创建GaussDB实例 { "Version": "1.1", "Statement": [{ "Effect": "Allow", "Action": ["gaussdb:instance:create"] }] } 示例2:拒绝用户删除GaussDB实例 拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先。 如果给用户授予GaussDB FullAccess的系统策略,但不希望用户拥有GaussDB FullAccess中定义的删除GaussDB实例权限,可以创建一条拒绝删除云服务的自定义策略,同时将GaussDB FullAccess和拒绝策略授予用户,根据Deny优先原则,则用户可以对GaussDB实例执行除了删除GaussDB实例外的所有操作。拒绝策略示例如下: { "Version": "1.1", "Statement": [{ "Action": ["gaussdb:instance:delete"], "Effect": "Deny" }] }
  • 支持的监控指标 GaussDB数据库性能监控指标,如下表所示。 表1 GaussDB支持的监控指标 指标ID 指标名称 指标含义 展示对象 指标单位 测量对象 监控周期(原始指标) rds001_cpu_util CPU使用率 该指标用于统计测量对象的CPU使用率。 当前节点 % 节点 60秒 rds002_mem_util 内存使用率 该指标用于统计测量对象的内存使用率。 当前节点 % 节点 60秒 rds003_bytes_in 数据写入量 该指标用于统计测量对象对应VM的网络发送字节数,取时间段的平均值。 当前节点 Byte/s 节点 60秒 rds004_bytes_out 数据传出量 该指标用于统计测量对象对应VM的网络接受字节数,取时间段的平均值。 当前节点 Byte/s 节点 60秒 rds014_iops 数据磁盘每秒读写次数 该指标用于统计测量对象的节点数据磁盘每秒读写次数,该值为实时值。 当前节点 Count/s 节点 60秒 rds016_disk_write_throughput 数据磁盘写吞吐量 该指标用于统计测量对象的节点数据磁盘每秒写吞吐量,该值为实时值。 当前节点 Byte/s 节点 60秒 rds017_disk_read_throughput 数据磁盘读吞吐量 该指标用于统计测量对象的节点数据磁盘每秒读吞吐量,该值为实时值。 当前节点 Byte/s 节点 60秒 rds020_avg_disk_ms_per_write 数据磁盘单次写入花费的时间 该指标用于统计测量对象的节点数据磁盘单次写入花费的时间,取时间段的平均值。 当前节点 ms 节点 60秒 rds021_avg_disk_ms_per_read 数据磁盘单次读取花费的时间 该指标用于统计测量对象的节点数据磁盘单次读取花费的时间,取时间段的平均值。 当前节点 ms 节点 60秒 io_bandwidth_usage 磁盘io带宽占用率 当前磁盘io带宽与磁盘最大带宽比值。 当前节点 % 节点 60秒 iops_usage IOPS使用率 当前IOPS与磁盘最大IOPS比值。 当前节点 % 节点 60秒 rds005_instance_disk_used_size 实例数据磁盘已使用大小 该指标用于统计测量对象的实例数据磁盘已使用大小,该值为实时值。 实例 GB 实例 60秒 rds006_instance_disk_total_size 实例数据磁盘总大小 该指标用于统计测量对象的实例数据磁盘总大小,该值为实时值。 实例 GB 实例 60秒 rds007_instance_disk_usage 实例数据磁盘已使用百分比 该指标用于统计测量对象的实例数据磁盘使用率,该值为实时值。 实例 % 实例 60秒 rds035_buffer_hit_ratio buffer命中率 该指标用于统计数据库buffer命中率。 实例 % 实例 60秒 rds036_deadlocks 死锁次数 该指标用于统计数据库发生事务死锁的次数,取该时间段的增量值。 实例 Count 实例 60秒 rds048_P80 80% SQL的响应时间 该指标用于统计数据库80% SQL的响应时间,该值为实时值。 实例 us 实例 60秒 rds049_P95 95% SQL的响应时间 该指标用于统计数据库95% SQL的响应时间,该值为实时值。 实例 us 实例 60秒 rds008_disk_used_size 磁盘已使用大小 该指标用于统计测量对象的节点数据磁盘使用值,该值为实时值。 当前节点 GB 组件 60秒 rds009_disk_total_size 磁盘总大小 该指标用于统计测量对象的节点数据磁盘总大小,该值为实时值。 当前节点 GB 组件 60秒 rds010_disk_usage 磁盘已使用百分比 该指标用于统计测量对象的节点数据磁盘使用率,该值为实时值。 当前节点 % 组件 60秒 rds024_current_sleep_time 主机流控时间 该指标用于统计测量对象的主机流控时间,该值为实时值。 分布式:备DN 主备版:备DN s 组件 60秒 rds025_current_rto 备机RTO时间 该指标用于统计测量对象的主备复制的RTO,该值为实时值。 分布式:备DN 主备版:备DN s 组件 60秒 rds026_login_counter 用户登入次数/秒 该指标用于统计每秒的登入次数,取时间段的平均值。 分布式:所有CN 主备版:主DN Count/s 组件 60秒 rds027_logout_counter 用户登出次数/秒 该指标用于统计每秒的登出次数,取时间段的平均值。 分布式:所有CN 主备版:主DN Count/s 组件 60秒 rds028_standby_delay 备机redo进度 该指标用于统计分片内备机redo进度,表示备机和主机的差距,该值为实时值。 分布式:备DN 主备版:主DN Byte 组件 60秒 rds030_wait_ratio 锁等待状态会话比率 该指标用于统计当前处于锁等待状态会话占活跃工作状态下会话比率,该值为实时值。 分布式:所有CN+主DN 主备版:所有DN % 组件 60秒 rds031_active_ratio 活跃会话率 该指标用于统计当前处于活跃工作状态会话占总会话数比率,该值为实时值。 分布式:所有CN+主DN 主备版:所有DN % 组件 60秒 rds034_inuse_counter CN连接数 该指标用于统计CN连接池中正在使用的连接数,该值为实时值。 分布式:所有CN 主备版:不采集 Count 组件 60秒 rds037_commit_counter 用户提交事务数/秒 该指标用于统计用户每秒提交的事务数,取时间段的平均值。 分布式:所有CN 主备版:主DN Count/s 组件 60秒 rds038_rollback_counter 用户回滚事务数/秒 该指标用于统计用户每秒回滚的事务数,取时间段的平均值。 分布式:所有CN 主备版:主DN Count/s 组件 60秒 rds039_bg_commit_counter 后台提交事务数/秒 该指标用于统计后台每秒提交的事务数,取时间段的平均值。 分布式:所有CN 主备版:主DN Count/s 组件 60秒 rds040_bg_rollback_counter 后台回滚事务数/秒 该指标用于统计后台每秒回滚的事务数,取时间段的平均值。 分布式:所有CN 主备版:主DN Count/s 组件 60秒 rds041_resp_avg 用户事务平均响应时间 该指标用于统计用户事务的平均响应时间。 分布式:所有CN 主备版:主DN us 组件 60秒 rds042_rollback_ratio 用户事务回滚率 该指标用于统计用户事务回滚事务占用户提交、回滚事务之和的比率,取时间段的平均值。 分布式:所有CN 主备版:主DN % 组件 60秒 rds043_bg_rollback_ratio 后台事务回滚率 该指标用于统计后台事务回滚事务占用户提交、回滚事务之和的比率,取时间段的平均值。 分布式:所有CN 主备版:主DN % 组件 60秒 rds044_ddl_count Data Definition Language/s 该指标用于统计用户负载在query层的DDL数量,取时间段的平均值。 分布式:所有CN+所有DN 主备版:所有DN Count/s 组件 60秒 rds045_dml_count Data Manipulation Language/s 该指标用于统计用户负载在query层的DML数量,取时间段的平均值。 分布式:所有CN+所有DN 主备版:所有DN Count/s 组件 60秒 rds046_dcl_count Data Control Language/s 该指标用于统计用户负载在query层的DCL数量,取时间段的平均值。 分布式:所有CN+所有DN 主备版:所有DN Count/s 组件 60秒 rds047_ddl_dcl_ratio DDL+DCL比率 该指标用于统计用户负载在query层的DDL+DCL占DDL+DCL+DML的比率,取时间段的平均值。 分布式:所有CN+所有DN 主备版:所有DN % 组件 60秒 rds050_ckpt_delay 待落盘的数据量 该指标用于统计信息同步到磁盘过程中待落盘的数据量,该值为实时值。 分布式:所有CN+主DN 主备版:主DN Byte 组件 60秒 rds051_phyrds 读物理文件的IO次数/秒 该指标用于统计数据库每秒读物理物件的IO次数,取时间段的平均值。 分布式:所有CN+主DN 主备版:所有DN Count/s 组件 60秒 rds052_phywrts 写物理文件的IO次数/秒 该指标用于统计数据库每秒写物理物件的IO次数,取时间段的平均值。 分布式:所有CN+主DN 主备版:所有DN Count/s 组件 60秒 rds053_online_session 在线会话数量 该指标用于统计当前在线的session个数,该值为实时值。 分布式:所有CN+所有DN 主备版:所有DN Count 组件 60秒 rds054_active_session 活跃会话数量 该指标用于统计当前所有活跃工作状态下会话个数,该值为实时值。 分布式:所有CN+主DN 主备版:主DN Count 组件 60秒 rds055_online_ratio 在线会话率 该指标用于统计CN(分布式)/主DN(主备版)上的在线会话比例,该值为实时值。 分布式:所有CN+主DN 主备版:所有DN % 组件 60秒 rds060_long_running_transaction_exectime 数据库最长事务的执行时长 该指标用于统计测量对象的数据库最长事务的执行时长, 该值为实时值。 分布式:所有CN+主DN 主备版:所有DN s 组件 60秒 rds066_replication_slot_wal_log_size 复制槽保留的WAL日志大小 该指标用于统计主DN上复制槽中保留的WAL日志的大小, 该值为实时值。 分布式:主DN 主备版:所有DN Byte 组件 60秒 rds067_xlog_lsn xlog速率 该指标用于统计CN或者主DN上xlog的速率, 该值为实时值。 分布式:所有CN+主DN 主备版:主DN Byte/s 组件 60秒 rds068_swap_used_ratio 交换内存使用率 该指标用于描述操作系统交换内存使用率,该值为实时值。 当前节点 % 节点 60秒 rds069_swap_total_size 交换内存总大小 该指标用于描述操作系统交换内存总大小,该值为实时值。 当前节点 MB 节点 60秒 rds070_thread_pool 线程池使用率 该指标用于统计CN和DN的线程池使用率,该值为实时值。 分布式:所有CN+主DN 主备版:所有DN % 组件 60秒 rds071_locks_session 等锁会话数 该指标用于统计CN/主DN的等锁会话数,该值为实时值。 分布式:所有CN+主DN 主备版:所有DN Count 组件 60秒 rds072_streaming_dr_xlog_gap 灾备集群分片日志差距 该指标用于统计流式容灾特性开启情况下,灾备集群中各个分片相对于生产集群的日志差距。 分布式:所有CN+主DN 主备版:主DN Byte 组件 60秒 rds073_streaming_dr_xlog_to_be_replayed 灾备集群分片待回放日志量 该指标用于统计流式容灾特性开启情况下,灾备集群中各个分片待回放日志量。 分布式:所有CN+主DN 主备版:主DN Byte 组件 60秒 rds074_streaming_dr_xlog_flushing_rate 灾备集群分片日志落盘速率 该指标用于统计流式容灾特性开启情况下,灾备集群中各个分片日志落盘速率。 分布式:所有CN+主DN 主备版:主DN Byte/s 组件 60秒 rds075_streaming_dr_xlog_replay_rate 灾备集群分片日志回放速率 该指标用于统计流式容灾特性开启情况下,灾备集群中各个分片日志回放速率。 分布式:所有CN+主DN 主备版:主DN Byte/s 组件 60秒 rds076_streaming_dr_rpo 分片RPO 该指标用于统计流式容灾特性开启情况下,各个分片的实时RPO。 分布式:所有CN+主DN 主备版:主DN s 组件 60秒 rds077_streaming_dr_rto 分片RTO 该指标用于统计流式容灾特性开启情况下,各个分片的实时RTO。 分布式:所有CN+主DN 主备版:主DN s 组件 60秒 rds078_inactive_replication_slot 非活跃的复制槽数 该指标用于统计非活跃的复制槽数(物理加逻辑)。 分布式:所有CN+主DN 主备版:所有DN Count 组件 60秒 rds079_standy_not_replayed_log 只读节点未回放日志量 该指标用于查询只读节点日志回放与接收量差距。 分布式:备DN 主备版:备DN Byte 组件 60秒 rds080_xlog_num xlog数量 该指标用于统计CN和DN数据目录下xlog数量,该值为实时值。 分布式:所有CN+所有DN 主备版:所有DN Count 组件 60秒 rds081_xlog_size xlog大小 该指标用于统计CN和DN数据目录下xlog大小,该值为实时值。 分布式:所有CN+所有DN 主备版:所有DN MB 组件 60秒 rds064_dynamic_used_memory 已使用动态内存 该指标用于统计测量对象的动态内存已使用大小,该值为实时值。 分布式:所有CN+所有DN 主备版:所有DN MB 组件 60秒 rds065_dynamic_used_memory_usage 动态内存使用率 该指标用于统计测量对象的动态内存使用率,该值为实时值。 分布式:所有CN+所有DN 主备版:所有DN % 组件 60秒 rds061_idle_in_transaction_num 空闲事务个数 该指标用于统计测量对象的空闲事务连接的数量,该值为实时值。 分布式:所有CN+所有DN 主备版:所有DN Count 组件 60秒 rds062_slowquery_sys 系统库慢SQL数量 该指标用于统计指定周期内主DN/CN上系统数据库慢SQL数量,该值为实时值。 分布式:所有CN 主备版:主DN Count 组件 60秒 rds063_slowquery_user 用户库慢SQL数量 该指标用于统计指定周期内主DN/CN上用户库慢SQL数量,该值为实时值。 分布式:所有CN 主备版:主DN Count 组件 60秒 rds082_gaussv5_wait_session 等待会话数量 该指标用于统计当前等待会话数量,该值为实时值。 分布式:所有CN + 备DN 主备版:所有DN Count 组件 60秒 rds083_cn_temp_dir_size CN临时目录大小 该指标用于统计CN数据目录下临时目录大小,该值为实时值。 分布式:所有CN + 备DN 主备版:所有DN MB 组件 60秒 rds084_sys_database_size 系统数据库大小 该值用于统计实例的postgres数据库大小,该值为实时值。 当前节点 Byte 节点 60秒 rds085_user_database_size 用户数据库总大小 该值用于统计实例的所有用户数据库总大小,该值为实时值。 当前节点 Byte 节点 60秒 rds086_select_distribution select分布 该值用于统计select语句的比例,该值为实时值。 分布式:所有CN + 所有DN 主备版:所有DN % 组件 60秒 rds087_update_distribution update分布 该值用于统计update语句的比例,该值为实时值。 分布式:所有CN + 所有DN 主备版:所有DN % 组件 60秒 rds088_insert_distribution insert分布 该值用于统计insert语句的比例,该值为实时值。 分布式:所有CN + 所有DN 主备版:所有DN % 组件 60秒 rds089_delete_distribution delete分布 该值用于统计delete语句的比例,该值为实时值。 分布式:所有CN + 所有DN 主备版:所有DN % 组件 60秒 rds090_gaussdbv5_statement statement数量 该值用于统计唯一SQL数量,该值为实时值。 分布式:所有CN + 所有DN 主备版:所有DN Count 组件 60秒 rds091_gaussv5_qps 读请求量 该值用于统计租户的每秒读请求数量,取时间段内的平均值。 分布式:所有CN 主备版:所有DN Count 组件 60秒 rds092_gaussv5_tps_rt_insert insert写请求响应时间 该值用于统计租户的insert写请求平均响应时间,取时间段内的平均值。 分布式:所有CN 主备版:所有DN ms 组件 60秒 rds093_gaussv5_tps_rt_update update写请求响应时间 该值用于统计租户的update写请求平均响应时间,取时间段内的平均值。 分布式:所有CN 主备版:所有DN ms 组件 60秒 rds094_gaussv5_tps_rt_delete delete写请求响应时间 该值用于统计租户的delete写请求平均响应时间,取时间段内的平均值。 分布式:所有CN 主备版:所有DN ms 组件 60秒 rds095_gaussv5_qps_rt 读请求响应时间 该值用于统计租户的读请求平均响应时间,取时间段内的平均值。 分布式:所有CN 主备版:所有DN ms 组件 60秒 retrans_rate 重传比例 该值用于统计 TCP 包重传率,该值为实时值。 当前节点 % 节点 60秒 rds096_process_used_memory 进程已使用内存 该指标用于统计CN或者DN上已经使用内存,该值为实时值。 分布式:所有CN + 所有DN 主备版:所有DN MB 组件 60秒 rds097_2pc_transaction_prepare 最长未决事务存活时长 该指标用于统计2pc未提交事务最长时间。 主备版:主DN s 组件 60秒 rds098_dn_instance_status DN组件状态 该指标用于表示DN组件状态,该值为实时值,1代表正常(Primary),2代表正常(Standby),3代表正常(Main Standby),4代表正常(Cascade Standby),10代表Catchup(备机追主机xlog),20代表备机:连接正常,复制异常,21代表连接异常。 主备版:所有DN 无 组件 60秒 rds099_replication_slot_dir_size 复制插槽目录大小 该值用于统计复制插槽目录大小,该值为实时值。 主备版:所有DN KB 组件 300秒 rds100_standby_diff_redo_and_receive 备机redo位置和接收位置差距 该指标用于查询备机redo位置与备机接收位置差距,以判断主备差异是因为备机回放慢还是主机未发送。 分布式:备DN 主备版:备DN Byte 组件 60秒 rds101_online_distinct_client_addr_count 在线客户端数量 该指标用于查看每个CN上的在线客户端数量。 分布式:所有CN Count 组件 60秒 rds102_working_distinct_client_addr_count 活跃客户端数量 该指标用于查看每个CN上的活跃客户端连接数。 分布式:所有CN Count 组件 60秒
  • 迁移方案总览 云数据库GaussDB提供了多种数据迁移方案,可满足从自建MySQL数据库、其他云上MySQL数据库、自建PostgreSQL数据库、其他云上PostgreSQL数据库、自建Oracle数据库、GaussDB、DB2 for LUW、RDS for SQL Server、本地SQL Server数据库、其他云SQL Server到云数据库GaussDB的迁移方案。 数据迁移工具有DRS和DAS。推荐使用DRS,DRS可以快速解决多场景下,数据库之间的数据流通问题,操作便捷、简单,仅需分钟级就能搭建完成迁移任务。通过服务化迁移,免去了传统的DBA人力成本和硬件成本,帮助降低数据传输的成本。 DRS提供实时同步功能,在不同的系统之间,将数据通过同步技术从一个数据源拷贝到其他数据库,并保持一致,实现关键业务的数据实时流动。 更多内容,请参见什么是云数据库GaussDB。 表1 GaussDB迁移方案 源数据库类型 目标数据库类型 数据量 一次性或持续 应用程序停机时间 迁移方式 文档连接 本地自建MySQL数据库 ECS自建MySQL数据库 其他云上MySQL数据库 GaussDB分布式版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将MySQL同步到GaussDB分布式版(入云) GaussDB主备版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将MySQL同步到GaussDB主备版(入云) 本地自建PostgreSQL数据库 ECS自建PostgreSQL数据库 其他云上PostgreSQL数据库 RDS for PostgreSQL GaussDB主备版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将PostgreSQL同步到GaussDB主备版 GaussDB分布式版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将PostgreSQL同步到GaussDB分布式版 本地自建Oracle数据库 ECS自建Oracle数据库 GaussDB主备版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将Oracle同步到GaussDB主备版(入云) GaussDB分布式版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将Oracle同步到GaussDB分布式版(入云) GaussDB分布式版 GaussDB分布式版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将GaussDB分布式版同步到GaussDB分布式版(出云) GaussDB主备版 说明: 目前仅支持白名单用户使用。 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将GaussDB分布式版同步到GaussDB主备版(出云) GaussDB分布式版 中 一次性 一段时间 使用DAS导出数据,再导入到GaussDB数据库 使用DAS的导出和导入功能迁移GaussDB数据 GaussDB主备版 GaussDB主备版 GaussDB分布式版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将GaussDB主备版同步到GaussDB分布式版(出云) GaussDB主备版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将GaussDB主备版同步到GaussDB主备版(出云) GaussDB分布式版 中 一次性 一段时间 使用DAS导出数据,再导入到GaussDB数据库 使用DAS的导出和导入功能迁移GaussDB数据 GaussDB主备版 DB2 for LUW GaussDB分布式版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将DB2 for LUW同步到GaussDB主备版(入云) GaussDB主备版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将DB2 for LUW同步到GaussDB分布式版(入云) 本地自建Microsoft SQL Server数据库 ECS自建Microsoft SQL Server数据库 其他云上Microsoft SQL Server数据库 RDS for SQL Server GaussDB主备版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将Microsoft SQL Server同步到GaussDB主备版 GaussDB分布式版 任何 一次性或持续 最低 使用DRS将源库数据同步到GaussDB数据库 将Microsoft SQL Server同步到GaussDB分布式版 父主题: 数据库迁移
  • 索引设计规范 使用数据库索引实践推荐的索引类型。 索引设计建议使用推荐类型,如果需要使用禁用、不推荐、限制使用的索引类型,建议联系GaussDB数据库专家进行评估。 表1 数据库索引实践推荐 索引类型 说明 是否推荐 主键/唯一索引 单列或多列主键/唯一索引 推荐 表达式索引 索引列为表的一列或多列计算而来的一个函数或者标量表达式 限制使用 对于HASH分布表,主键和唯一索引必须包含分布键。 当设计组合索引时,优化器会通过计算代价来选择合适的执行计划。例如:在组合索引(a,b,c)下,当查询时如果只使用过滤条件b,优化器经过计算索引成本较低时,会选择索引。 不建议单表创建多个唯一索引。 同时维护多个唯一索引的开销远大于维护一个多列唯一索引,如果业务逻辑上多个唯一索引,与一个多列唯一索引等价,应使用多列唯一索引。 组合索引字段个数不超过5个。 禁止组合索引组合字符串的总长度超过200。 索引(包括单列索引和复合索引)字段应为NOT NULL字段。 同字段上创建索引的维护效率不同。数值类型字段优于字符类型及其他数据类型,因此对于考虑创建索引的ID、时间等字段,建议使用数值类型进行存储。 建议在关联列上创建索引。 GaussDB支持HASH JOIN,但是当内表较小等RESCAN代价较低的情况下,仍然可能选择NESTLOOP JOIN来完成关联。如果通过EXPLAIN可以查看到NESTLOOP JOIN计划,则可以通过在关联列上创建索引,提高NESTLOOP JOIN效率。 父主题: 数据库设计规范
  • 备份原理 图1 全量备份示意图 全量备份:第一次的全量备份后,无论数据是否变化,第二次备份和第三次备份都会将所有的数据全部进行备份。 图2 差量备份示意图 差量备份:第一次的全量备份之后,第二次备份只会备份数据变化的数据,第三次备份会备份第一次全量备份后数据变化的数据。 图3 增量备份示意图 增量备份:第一次的全量备份之后,第二次备份只会备份数据变化的数据,第三次备份只会备份第二次备份后数据变化的数据。
  • Prometheus实例读写地址支持公网的局点 华为云用户应使用公网Remote Read地址和Remote Write地址访问AOM的Prometheus监控服务,内网地址仅供华为云内部云服务调用。 公网Remote Write地址仅部分局点支持,具体请参见表1。 表1 支持公网数据上报的说明 局点名称 Region名称 公网访问地址 华东-上海一 cn-east-3 aom-access.cn-east-3.myhuaweicloud.com 华东-上海二 cn-east-2 aom-access.cn-east-2.myhuaweicloud.com 华北-北京四 cn-north-4 aom-access.cn-north-4.myhuaweicloud.com 华南-广州 cn-south-1 aom-access.cn-south-1.myhuaweicloud.com 父主题: Prometheus监控
共100000条