• 沒有找到結果。

不支持的功能特性

● 不支持存储过程;

● 不支持触发器;

● 不支持视图;

产品介绍 5 使用限制

● 不支持事件;

● 不支持自定义函数;

● 不支持外键约束、外键关联;

● 不支持全文/空间函数与索引;

● 不支持临时表;

● 不支持 BEGIN…END、LOOP…END LOOP、REPEAT…UNTIL…END REPEAT、

WHILE…DO…END WHILE 等复合语句;

● 不支类似 IF ,WHILE 等流程控制类语句;

● 不支持RESET、FLUSH语句;

● 不支持BINLOG语句;

● 不支持HANDLER语句;

● 不支持INSTALL/UNINSTALL PLUGIN语句;

● 不支持非 ascii/latin1/binary/utf8/utf8mb4 的字符集;

● 不支持SYS schema;

● 不支持MySQL追踪优化器;

● 不支持X-Protocol;

● 不支持CHECKSUM TABLE 语法;

● 不支持表维护语句,包括ANALYZE/CHECK/CHECKSUM/OPTIMIZE/REPAIR TABLE;

● 不支持session变量赋值与查询,如set @rowid=0;select @rowid:=@rowid+1,id from user;

● 不支持SQL语句中包含单行注释 ' --' 或者多行(块)注释 ' /.../';

● 不完整支持系统变量查询,系统变量查询语句返回值为RDS实例相关变量值,而 非DDM引擎内相关变量值。例如select @@autocommit返回的值,并不代表 DDM当前事务状态;

● 不支持SET Syntax修改全局变量;

● 不支持PARTITION 语法,建议不要使用partition表;

● 不支持LOAD XML语句;

● 暂不支持“IS UNKNOWN”表达式;

不支持的函数

DDM计算层暂不支持如下函数,如果无法确认函数是否能下推到RDS,请不要使用该 函数。

● 不支持XML函数;

产品介绍 5 使用限制

● 不支持ANY_VALUE()函数;

● 不支持ROW_COUNT()函数;

● 不支持COMPRESS()函数;

● 不支持SHA()函数;

● 不支持SHA1()函数;

● 不支持MD5()函数;

● 不支持AES_ENCRYPT()函数;

● 不支持AES_DECRYPT()函数;

● 不支持JSON_OBJECTAGG()聚合函数;

● 不支持JSON_ARRAYAGG()聚合函数;

● 不支持STD()聚合函数;

● 不支持STDDEV()聚合函数;

● 不支持STDDEV_POP()聚合函数;

● 不支持STDDEV_SAMP()聚合函数;

● 不支持VAR_POP()聚合函数;

● 不支持VAR_SAMP()聚合函数;

● 不支持VARIANCE()聚合函数;

不支持的 SQL 语法

SELECT

● 不支持DISTINCTROW;

● 不支持[HIGH_PRIORITY]、[STRAIGHT_JOIN]、 [SQL_SMALL_RESULT]、

[SQL_BIG_RESULT] 、[SQL_BUFFER_RESULT] 、[SQL_NO_CACHE]

[SQL_CALC_FOUND_ROWS]等选项放在DDM实例下面。

● 不支持SELECT ... GROUP BY ... WITH ROLLUP语句;

● 不支持SELECT ... ORDER BY ... WITH ROLLUP语句;

● 不支持WITH语句;

● 不支持窗口函数;

● SELECT FOR UPDATE仅支持简单查询,不支持join、group by、order by、limit 等语句。用于修饰FOR UPDATE的[NOWAIT | SKIP LOCKED]选项对于DDM无 效;

● 对于UNION中的每个SELECT, DDM暂不支持使用多个同名的列。如下SQL的 SELECT中存在重复的列名,SELECT id, id, name FROM t1 UNION SELECT pk, pk, name FROM t2;

排序与Limit

● LIMIT/OFFSET参数支持范围为0-2,147,483,647;

聚合

● 不支持group by语句后添加asc/desc函数来实现排序语义。DDM自动忽略group by后的asc/desc关键字。MySQL 8.0.13以下版本支持group by后添加asc/desc函 数来实现排序语义,8.0.13及以上版本已废弃该用法,使用时会报语法错误。推荐 使用order by语句来保证排序语义;

产品介绍 5 使用限制

子查询

● 不支持孙子和爷爷存在关联关系的子查询;

● 不支持HAVING子句中的子查询,JOIN ON 条件中的子查询;

● Derived Tables 必须拥有一个别名;

● Derived Tables 不可以成为 Correlated Subqueries,即不能包含子查询外部表的 引用;

LOAD DATA语法限制

● ESCAPED BY只支持'\';

● 不支持PARTITION (partition_name [, partition_name] ...);

● 不支持LINES STARTING BY 'string';

INSERT 和 REPLACE

● 不支持INSERT DELAYED...;

● 不支持不包含拆分字段的INSERT;

● 暂不支持PARTITION语法,建议不要使用partition表;

● INSERT操作不支持“datetime”字段取值1582年及之前年份;

● INSERT不支持ON DUPLICATE KEY UPDATE 关联子查询列;

例:ON DUPLICATE KEY UPDATE语句中引用了子查询列c。

INSERT INTO t1(a, b)

SELECT * FROM(SELECT c, d FROM t2 UNION SELECT e, f FROM t3) AS dt ON DUPLICATE KEY UPDATE b = b + c;

● INSERT和REPLACE不支持拆分键值为DEFAULT关键字;

UPDATE和DELETE

● 不支持更新拆分键值为DEFAULT的关键字;

● 不支持在一个语句中对同一字段重复更新;

● 不支持关联更新拆分键;

例:name 是tbl_1的拆分键。

UPDATE tbl_1 a,tbl_2 b set a.name=b.name where a.id=b.id;

● 不支持通过INSERT ON DUPLICATE KEY UPDATE更新拆分键;

● 不支持自关联更新;

例:UPDATE tbl_1 a,tbl_1 b set a.tinyblob_col=concat(b.tinyblob_col,'aaabbb');

● 不支持不带关联条件的关联更新;

例:UPDATE tbl_3,tbl_4 SET tbl_3.varchar_col='dsgfdg';

● 关联更新不支持在目标列的赋值语句或表达式中引用其它目标列;

例:UPDATE tbl_1 a,tbl_2 b SET a.name=concat(b.name,'aaaa'),b.name=concat(a.name,'bbbb') ON a.id=b.id;

DDL

● 库名、表名不可修改,拆分字段的名称和类型都不可以变更;

● 不支持通过SQL直接创建、删除逻辑库;

● 不支持FULL_TEXT索引;

● 不支持 CREATE TABLE tblName AS SELECT stmt 语法;

产品介绍 5 使用限制

● 不支持 CREATE TABLE tblName LIKE stmt 语法;

● 不支持单条语句中DROP多张表;

● DDL语句不支持多语句;

● 广播表、拆分表不支持创建外键;

● 不支持创建以“_ddm”为前缀的表;

● 不支持创建TEMPOPARY类型的拆分表、广播表;

表回收站

● 不支持Savepoints;

● 不支持XA语法(DDM内部已经通过XA实现了分布式事务,不需要用户层再处理 这个语义);

● 不支持自定义事务隔离级别,目前DDM只支持READ COMMITTED隔离级别。考 虑到兼容性因素,对于设置数据库隔离级别的语句(如SET GLOBAL

TRANSACTION ISOLATION LEVEL REPEATABLE READ),DDM不会报错,但会 忽略对事务隔离级别的修改;

● 不支持设置事务为只读(START TRANSACTION READ ONLY),考虑到兼容性因 素,DDM会将只读事务的开启自动转换为开启读写事务;

权限

● 不支持列级权限;

● 不支持子程序层级权限;

数据库管理语句

● 不支持SHOW TRIGGERS语法;

● 不支持SHOW PROFILES、SHOW ERRORS、show warnings等多数运维SHOW语 句;

● 下列的SHOW指令会随机发到某个物理分片,每个物理分片如果在不同的RDS for MySQL实例上,查得的变量或者表信息可能不同:

– SHOW TABLE STATUS;

– SHOW VARIABLES Syntax;

– SHOW WARNINGS Syntax 不支持 LIMIT/COUNT 的组合;

– SHOW ERRORS Syntax 不支持 LIMIT/COUNT 的组合;

产品介绍 5 使用限制

INFORMATION_SCHEMA

● 仅支持SCHEMATA、TABLES、COLUMNS、STATISTICS、PARTITIONS的简单查 询(没有子查询、JOIN、聚合函数、ORDER BY、 LIMIT)

产品介绍 5 使用限制

6 计费说明

分布式数据库中间件DDM仅按使用情况付费,没有最低收费。

计费项

DDM对您选择的数据库实例收费。

6-1 DDM 计费项说明

计费项 计费说明

数据库实例 提供包年包月和按需计费两种方式。DDM按计算节点收费。

公网流量 DDM实例支持公网访问,公网访问会产生带宽流量费;DDM数 据库实例在云内部网络产生的流量不计费。

DDM管理费用详情,请参见产品价格详情。您可以通过DDM提供的价格计算器,选择 您需要的实例规格,来快速计算出购买DDM实例的参考价格。

计费模式

提供按小时、按月、按年的计费方式供您灵活选择,使用越久越便宜。

● 预付费(包年包月):这种购买方式相对于按需付费提供更大的折扣,对于长期 使用者,推荐该方式。

● 按需付费(小时):这种购买方式比较灵活,可以即开即停,按实际使用时长计 费。以自然小时为单位整点计费,不足一小时按一小时计费。

变更配置

● 变更DDM节点规格:您可以根据业务需求变更DDM节点规格,变更后即刻按照变 更后的节点规格的价格计费。

● 扩容计算节点:您可以根据业务需求增加您的计算节点,扩容后即刻按照新的节 点数计费。

产品介绍 6 计费说明

续费

目前DDM提供“包年/包月”和“按需计费”购买方式。

● “按需计费”方式,即按实际使用时长计费,以自然小时为单位整点计费,不足 一小时按一小时计费,只要您账户上有足够余额,就可以一直使用服务。当账户 余额不足时,就会导致欠费,因此在欠费前请及时充值。

● “包年/包月”计费方式,您在购买时一次性付费,使用过程中不会再另外扣费,

只要您的账户上有足够余额,则不会影响您的使用。

如需续费,请进入“续费管理”页面进行续费操作。

到期与欠费

● 服务到期

“按需计费”实例,没有到期的概念。

“包年/包月”实例到期后无法在DDM管理控制台进行该实例的操作,相关接口也 无法调用,自动化监控或告警等运维也会停止。如果在保留期结束时您没有续 费,实例将终止服务,系统中的数据也将被永久删除。

若您购买的实例已到期,请参见费用中心用户指南中资源停止服务或逾期释放说 明章节进行处理。

● 欠费

“包年/包月”实例,没有欠费的概念。

“按需计费”实例是按每小时扣费,当余额不足,无法对上一个小时的费用进行 扣费,就会导致实例欠费。您续费后解冻实例,可继续正常使用,请注意在保留 期进行的续费,是以原到期时间作为生效时间,您应当支付从进入保留期开始到 续费时的服务费用。

若您购买的实例已欠费,请参见费用中心用户指南中欠费还款章节进行处理。

产品介绍 6 计费说明

7 区域和可用区

什么是区域、可用区?

我们用区域和可用区来描述数据中心的位置,您可以在特定的区域、可用区创建资 源。

● 区域(Region):从地理位置和网络时延维度划分,同一个Region内共享弹性计 算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为 通用Region和专属Region,通用Region指面向公共租户提供通用云服务的 Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用 Region。

● 可用区(AZ,Availability Zone):一个AZ是一个或多个物理数据中心的集合,

有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。

一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统 的需求。

图7-1阐明了区域和可用区之间的关系。

7-1 区域和可用区

目前,华为云已在全球多个地域开放云服务,您可以根据需求选择适合自己的区域和 可用区。更多信息请参见华为云全球站点。

产品介绍 7 区域和可用区

如何选择区域?

选择区域时,您需要考虑以下几个因素:

● 地理位置

一般情况下,建议就近选择靠近您或者您的目标用户的区域,这样可以减少网络 时延,提高访问速度。不过,在基础设施、BGP网络品质、资源的操作与配置等 方面,中国大陆各个区域间区别不大,如果您或者您的目标用户在中国大陆,可 以不用考虑不同区域造成的网络时延问题。

● 资源的价格

不同区域的资源价格可能有差异,请参见华为云服务价格详情。

如何选择可用区?

是否将资源放在同一可用区内,主要取决于您对容灾能力和网络时延的要求。

● 如果您的应用需要较高的容灾能力,建议您将资源部署在同一区域的不同可用区 内。

● 如果您的应用要求实例之间的网络延时较低,则建议您将资源创建在同一可用区

● 如果您的应用要求实例之间的网络延时较低,则建议您将资源创建在同一可用区

相關文件