检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
条件 算法 举例 无 分表路由结果 = 分表拆分键值 % 分表数 分表拆分键值 :2019-1-15 分表:15 % 366= 15 建表语法 create table test_mmdd_tb ( id int, name varchar(30) DEFAULT
分库/分表:crc32(year('2019-10-11')) % 102400 = 5404 5404属于0=[0-12799],则路由到分片0。 建表语法 假设用户需要对ID列按HASH函数进行分库不分表: create table hash_tb ( id int, name
算法举例 条件 算法 举例 无 分表路由结果 = 分表拆分键值 % 分表数 分表拆分键值 :2019-1-15 分表:1 % 12 = 1 建表语法 create table test_mm_tb ( id int, name varchar(30) DEFAULT
算法举例 条件 算法 举例 无 分表路由结果 = 分表拆分键值 % 分表数 分表拆分键值 :2019-1-15 分表:3 % 7= 3 建表语法 create table test_week_tb ( id int, name varchar(30) DEFAULT
支持跨分片的JOIN,主要实现的方式有三种:广播表,ER分片和ShareJoin。 DDM目前禁止多个表的跨库update和delete。 父主题: SQL语法类
分库路由结果四舍五入到最接近的整数。 拆分键:2012-12-31 分库 :(2012 * 366 + 366) % (8*3) = 6 分库 :6 / 3 = 2 建表语法 假设用户的实例里已经分了8个物理库,现有一个业务想按年日进行分库。要求同一天的数据都能落在同一张分表,并且两年以内的每一天都能单独对应一
SHOW PHYSICAL PROCESSLIST 命令格式1:展示后端rds的processlist。 show physical processlist 命令格式2:在命令1的结果集中过滤掉info列为空的数据,只展示info列不为空的结果。 show physical processlist
分库路由结果四舍五入到最接近的整数。 拆分键:2012-12-31 分库 :(2013 * 54 + 1) % (8*3) = 7 分库 :7 / 3 = 2 建表语法 假设用户的实例里已经分了8个物理库, 现有一个业务想按年周进行分库。要求同一周的数据都能落在同一张分表,并且两年以内的每个周都单独对应一
HINT-DB/TABLE 命令格式: /*+db=<physical_db_name>,table=<physical_table_name>*/ TRUNCATE TABLE <table_name> 描述: 删除库名为<physical_db_name>下表名为<physi
全局序列概述 全局序列主要指基于DB的全局序列。 支持修改自增序列初始值。 全局序列主要保证ID全局唯一,并不能保证一定是连续递增的。 对使用DDM自增序列,不允许用户传null值以外的值,当用户不传或传null值时,DDM会默认分配,如果用户手工赋值会有和DDM分配自增键值冲突的风险。
条件 算法 举例 无 分表路由结果 = 分表拆分键值 % 分表数 分表拆分键值 :2019-1-15 分表:15 % 31 = 15 建表语法 create table test_dd_tb ( id int, name varchar(30) DEFAULT
数据导入导出 支持外部数据导入,帮助用户实现数据库平滑上云。支持DDM实例数据按业务需求导出。 具体操作请参见数据迁移。 SQL语法 兼容MySQL 5.7和8.0的协议和语法。 读写分离 DDM的读写分离功能对应用透明,无需修改任何业务代码,将只读实例添加到DDM即可。提升数据库处理能力,
hash(‘abc’)=‘abc’.hashCode()=96354 分表 :96354% (8 * 3) = 18 分库 :18 / 3=6 建表语法 如果用户需要对ID列按MOD_HASH函数进行分库不分表: create table mod_hash_tb( id int, name
自定义HINT读写分离 DDM提供HINT来指定SQL语句是在主实例上执行还是在只读实例上执行。 HINT支持以下两种格式: 格式一: /*!mycat:db_type=host */ 格式二: /*+ db_type=host */ 其中host可以是master或者slave
通过HINT指定分片直接执行SQL DDM提供HINT在一个或多个分片上执行SQL语句。 HINT支持以下两种格式: 一个分片上执行SQL:/*+db=<physical_db_name>*/ <your query>; 多个分片上执行SQL:/*+db={<physical_db_name1>
toUpperCase().hashCode()=64578 分表 :64578% (8 * 3) = 18 分库 :18 / 3=6 建表语法 如果用户需要对ID列按MOD_HASH_CI函数进行分库不分表: create table mod_hash_ci_tb( id int
HINT- ALLOW_ALTER_RERUN 命令格式: /*+ allow_alter_rerun=true*/<ALTER TABLE的命令> 描述: 使用该hint可支持命令重复执行不报错,共支持八种alter table的命令形式: add column、modify column、drop
nextval、currval在全局序列的使用 nextval返回下一个序列值,currval返回当前序列值。其中nextval可以通过nextval(n)返回n个唯一序列值。 nextval(n)只能单独用在select sequence.nextval(n)场景下并且不支持跨库操作。
自定义HINT跳过执行计划缓存 DDM提供HINT来控制SELECT语句是否跳过缓存的执行计划。 HINT的格式为: /*!GAUSS:skip_plancache=flag */ 其中flag可以是true或者false,true代表跳过执行计划缓存,false代表不跳过。 目前只支持SELECT语句。
如何处理INSERT语句批量插入多条数据时报错 解决方案 建议拆分为多条INSERT语句插入。 父主题: SQL语法类