阿里云
服务器地域选择
发表主题 回复主题
  • 11777阅读
  • 135回复

DRDS常见问题专用贴

发帖
170
云币
213
— 本帖被 不靠谱贝贝 执行置顶操作(2017-05-17) —
每一楼一个问题和回答,大家如果碰到问题可以按照索引查询,不断更新中...

1. 跨分库分布式事务报错

2. DRDS引擎监控的逻辑QPS与物理QPS两项指标的意义

3. DRDS引擎监控的逻辑RT与物理RT两项指标的意义

4. DRDS是否支持数据缩容操作?

5. VPC中的ECS如何访问DRDS?

6. Application was streaming results when the connection failed.  

7. 通过DTS从RDS往DRDS导入数据后,DRDS的Seuqence为何没有更新并导致主键冲突?  

8. DRDS 是表名大小写不敏感吗?可以修改吗?

9. DRDS的拆分键是字符串的时候,值是否大小写敏感?

10. DRDS 下如何使用联合主键?

11. DRDS 下是否支持跨逻辑库访问?

12.如何查看DRDS上有哪些连接?(如何查看有哪些机器、用户连接了DRDS?)

13.如何在DRDS开启分布式事务(GTS)

14. DRDS 如何处理 GROUP BY 查询

15. DRDS怎么对查询进行KILL?

16. DRDS 通过 DMS 设置 autocommit 不生效?

17. DRDS是否支持LOAD DATA INFILE?

18.处理 Sequence(全局唯一序列)失败,All dataSource faild to get value!

19.DRDS报错:XXX command denied to user `dbName`@ip for table `tbName`

20.DRDS与RDS分别处于经典网络和VPC网络时,对网络的设置说明

21. DDL 执行失败无法使用 if not exist 批量修复的临时处理办法  

22. 通过DTS导入数据后怎么保证后续的insert操作的自增ID不会出现重复?

23. 执行全表删除或者全表更新操作执行失败的解决办法  

24. 如何给多个 RAM 子帐户分配不同 DRDS 实例的权限

25. 控制台 Specified access key is not found 问题处理

26.  执行DDL提示“获取DB锁超时”或者“Lock conflict”错误

27.  DRDS 执行 use dbname 报错或超时

28. DRDS 创建分库分表,且指定主键是自增,在执行过程中发生主键冲突。

29. DRDS能监控哪些指标 ,具体含义是什么?能对哪些指标进行报警?

30. 如何从共享实例迁移到专享实例?

31. 如何查看DRDS的版本号?每个版本的功能变化是什么?

32. DRDS账号体系暂不支持跨DRDS DB的授权

33. DMS 无法连接 DRDS 实例

34. RDS 定时清理BinLog导致平滑扩容失败问题

35. 查看DRDS或RDS的用户账号信息

36. DRDS 实例访问地址详解

37. 拆分键的值是否可以为NULL?

38. DRDS从经典网络切换到VPC网络(或反之),域名会不会发生变化?

39. 变配实例失败提示 RDS 不是正常运行状态问题解决

40. 如何让一个分布式DDL能够在各个分片上并行执行?

41. Incorrect string value: '\xF0\xBD\xA8\xB8\xEF\xBF...'是什么错误?

42. 【私有云】DRDS-SERVER磁盘满解决方案

43. 如何将一个DRDS迁移到另一个可用区?

44. 在只读实例挂掉的情况下,DRDS是否会自动将流量切到其他可用实例?

45. INSERT...SELECT语句报错 [TDDL-4604][ERR_CONCURRENT_TRANSACTION] 是什么原因?

46. 如何直接访问RDS上DRDS所创建的分库?

47. DRDS下面的RDS是否可以切换到公网?

48.  DRDS中的隔离级别默认是啥?如何在DRDS中设置隔离级别?

49.  DRDS是否支持VPC、经典网络混合访问?

50.  修改了DRDS在RDS上创建的用户名的密码,导致DRDS无法连接RDS,该怎么办?

51.  unrecognized token as first token of primary: KW_DB.是什么错误?

52.  将DRDS从经典网络切换成VPC的时候,有哪些需要注意的事项?

53.  DRDS中,什么样的SQL一定会被路由到主库(主实例)?

54.  如何根据SHOW PROCESSLIST的结果,找到线程所对应的RDS?

55. 控制台执行DDL报错,“请登录到 DRDS 数据库执行 DDL 语句”是什么错误?

56. 使用DRDS如何保证全局唯一性约束?

57.  VPC中的DRDS是否支持IP白名单?

58.  DRDS是否支持对表进行rename操作?

59.  DRDS升级配置规格,是否会对应用访问DRDS产生影响?

60.  使用GTS(TXC)做分布式事务对 DRDS 性能有影响吗?

61.  DRDS中,使用GTS(TXC),分布式事务的默认超时时间是多少,如何调整?

62.  误删DRDS分库账号后如何恢复?

63.  [TDDL-5115][ERR_AUTHORIZE_RESTRICTED_TO_PRIVATE_INSTANCE]报错是什么意思?

64.  如何判断自主升级的实例是否升级成功?

65. DRDS对字符串类型的拆分键进行路由计算的时候,所使用的Hash算法是什么?

66. DRDS 实例升级后无法变更配置?

67. RANGE_HASH 在对两个字符串拆分键进行路由计算时,所使用的Hash算法是什么?  

68. DRDS中,一个分布式DDL在各个分片上是串行执行还是并行执行的?  

69. 分布式 JOIN 返回的数据行数超出限制,这个默认值能否调大一点?

70. 淘宝访问数据库使用哪些框架或者包?

71.  DRDS中,拆分键的值是否允许修改?

72. 表删除后,重建表时报错Sequence已经存在该怎么办?

73. DRDS是否支持Prepare协议?与不使用Prepare协议性能上是否有差异?

74. DRDS中,如果一张表只分库没有分表,今后能否改成分库又分表?

75. DRDS中异构索引功能是否开放使用?

76. 在DRDS中,如何同时使用多个自定义HINT?

77. 使用MyBatis连接DRDS,为何无法获取返回值?

78. DRDS是否支持外键约束?

79. DRDS中,是否可以同时在一个连接上并发的执行多个SQL?

80. DRDS中,如何使用自定义HINT对JOIN SQL进行路由?

81. 登陆DMS提示没有权限怎办?

82. DRDS中,UPDATE/DELETE等语句返回的affectRows的含义是什么?

83. DRDS每个数据库建立分库数量是多少?

84. DRDS能不能在线进行数据一致性备份?

85. DRDS的INSERT语句中,是否支持ON DUPLICATE KEY UPDATE?

88. 如何恢复删除数据?

89. DRDS 支持逻辑 DB 下的 information_schema 相关查询吗?

90. REPLACE INTO 需要哪些权限?

91. 非拆分模式是否支持多个 RDS 分库?

92. DRDS 上连接池大小能否自由调整?

93. DRDS是否对SQL结果等数据进行缓存?  

95. 为何测试中 DRDS 的 QPS 达不到规格说明中标称的指标?  

96. 只读实例能否保证读数据的一致性?  

97. 通过 mysqldump 从 DRDS 库中导出数据时,报 LOCK/UNLOCK TABLES 执行错误如何处理?

98. 是否可以在 0000 库以外的分库中创建单表?

99. 基于datax从ODPS同步数据到DRDS的参数建议

100. PHP 客户端通过 PDO 访问 DRDS 报错 [TDDL-4007][ERR_CANNOT_FETCH_TABLE_META] 如何解决?

101. 在关闭全表扫描情况下,使用 HINT 方式执行全表扫描的 SQL

102. 后端 RDS 实例的规格不同时,DRDS 如何计算后端连接池的最大连接数?

103. DRDS报错:Error occurs around this fragment: {LL QUERY 2611790}是什么问题?

104. 为什么DELETE了数据,但RDS空间没有减少?/DRDS是否支持OPTIMIZE TABLE指令?

105. DRDS中,OPTIMIZE TABLE执行时各个分片是如何并行的?

106. DDL 执行失败,报错 TddlNestableRuntimeException 如何处理?

107. 执行 ALTER TABLE old_table RENAME new_table 语句报错,如何处理?

108. RDS被锁定导致无法执行DML语句抛出 UPDATE command denied to user

109. 分布式事务报错:Transaction xxxxxx doesnt exist是什么问题?

110. DRDS如何开通小表广播?

111. DRDS中,一个逻辑库如何迁移到另一个DRDS?

112. 如何对DRDS做监控?

113. 实例购买页或者升配页遇到库存不足怎么办?

114. The last packet successfully received from the server was 900,103 milliseconds ago是啥错误?

115.  mysqldump执行出错,提示Killed是什么原因?

116.  如何查看DRDS中数据的分布是否均匀?

117.  Error occurs when execute on GROUP 'XXX' ATOM 'YYY': #HY00 是什么错误?

118.  如何查看DRDS下每个分库的最大后端连接数?

119.  用来做读写分离的RDS只读实例应该如何来释放?

120.  哪些SQL一定不会被路由到只读实例?

121.  如何判断DRDS执行的一个SQL是否在autocommit=false的事务中?

122.  如何查看一个物理SQL得来源IP?

123.  RDS 地址发生变化导致DRDS无法连接RDS应该怎么办?

124.  为什么SHOW NODE显示的读流量比例与我设置的不同?

125.  RDS只读实例被释放后,使用了SLAVE HINT的SQL会不会报错?

126.  DRDS中,物理SQL前面的注释的含义是什么?

127.  DRDS中,UNION为何有重复记录?

128.  读写分离常见问题汇总  

129. DRDS 数据库看不到监控数据

130.扩容期间可以进行 DDL 操作吗?

131.DRDS支持 with rollup 语法吗?

[ 此帖被drds_rd在2017-10-20 15:04重新编辑 ]
发帖
170
云币
213
只看该作者 沙发  发表于: 04-25
跨分库分布式事务报错
现象: [asdfasdfsdfsd-4][10.10.10.10:3306][db_name]ERR-CODE: [TDDL-4603][ERR_ACCROSS_DB_TRANSACTION] Transaction accross db is not supported in current transaction policy, transaction node is: xxxx_0001_RDS, but this sql execute on: xxxx_0002_RDS. More: [http://middleware.alibaba-inc.com/faq/faqByFaqCode.html?faqCode=TDDL-4603]

内容关键字: 分布式事务 跨分库

解答:这个报错是指你的事务中几个操作跨分库了(DRDS连接按照分库创建,就是xxxx_0001_RDS这种在事务中操作涉及等于大于2个),这样跨几个连接的事务属于分布式事务,有同学说我就一个RDS上,即使跨了几个分库应该也支持单机事务啊,这个在这种情况下没错,但是我们实际上不清楚您什么时候会通过扩容将库分布到不同的RDS实例上,所以严格起见跨库即默认报分布式事务错误

解决方案:
1.只要事务中涉及的这些表分库字段带 等值条件( where db_partition_key = ?),且值都一样,确保落到一个分片
2. 开GTS服务,接受read commit级别的分布式事务(包括存在的一些限制)。


[ 此帖被drds_rd在2017-07-12 17:30重新编辑 ]
发帖
170
云币
213
只看该作者 板凳  发表于: 04-26
DRDS引擎监控的逻辑QPS与物理QPS两项指标是什么意思?
问题:
DRDS引擎监控的逻辑QPS与物理QPS两项指标是什么意思?

关键字:
逻辑QPS 、物理QPS

解答:

首先,介绍以下两个概念:
逻辑SQL: 应用发给DRDS的SQL;
物理SQL: DRDS发给RDS的SQL。

逻辑QPS是从逻辑SQL的维度去统计DRDS每秒处理来自用户的SQL数目;

物理QPS是从物理SQL的维计去统计DRDS每秒发给RDS的SQL数目。

DRDS作为一个支持分库分表的分布式关系型数据库服务,应用发给DRDS的一条逻辑SQL之下,就有可能会对应多条的物理SQL。通过观察一个DB的逻辑QPS与物理QPS之间的差异,有助于发现应用的SQL在DRDS进行的执行情况(如是否带了拆分键、是否含有全表扫描等)。
[ 此帖被drds_rd在2017-04-26 00:22重新编辑 ]
发帖
170
云币
213
只看该作者 地板  发表于: 04-26
DRDS的逻辑RT与物理RT是什么意思?
问题:
DRDS引擎监控的逻辑RT与物理RT两项指标是什么意思?

关键字:
逻辑RT 、物理RT

解答:

首先,介绍以下两个概念:
逻辑SQL: 应用发给DRDS的SQL;
物理SQL: DRDS发给RDS的SQL。

逻辑RT是指执行逻辑SQL的响应时间(ResponseTime), 即从应用给DRDS发送SQL,到DRDS返回查询结果所用的时间,单位是ms;

物理RT是指执行物理SQL的响应时间(ResponseTime), 即从DRDS向RDS发送SQL,到RDS给DRDS返回查询结果所用的时间,单位是ms。

通过对比DRDS的逻辑RT与物理RT,可以分析一下慢SQL到底是慢在DRDS层还是慢在RDS层。

[ 此帖被drds_rd在2017-05-04 10:38重新编辑 ]
发帖
170
云币
213
只看该作者 4楼 发表于: 05-04
DRDS目前是否支持数据的缩容?
问题:
DRDS目前是否支持数据的缩容?

关键字:
缩容

解答:
不支持,目前DRDS控制台不支持用户的数据缩容操作,也不支持工单处理。
[ 此帖被drds_rd在2017-05-04 10:40重新编辑 ]
发帖
170
云币
213
只看该作者 5楼 发表于: 05-04
VPC中的ECS如何访问DRDS?
问题:VPC中的ECS如何访问DRDS?


关键字: VPC


解答:
ECS与DRDS需在同样的网络下,才能访问。因此VPC中的ECS只能访问同一个VPC中的DRDS。因此,您需要将您的DRDS切换到相应的VPC网络下,才能供VPC中的ECS访问。DRDS切换到VPC网络可以在DRDS控制台上自助完成,参考:https://help.aliyun.com/knowledge_detail/52162.html
注意:VPC下的DRDS实例不支持白名单,如果设置了白名单,会导致无法登陆。所以切换前请清空白名单。如果已经切换了VPC,请切回经典网络清空白名单后再切换到VPC。



[ 此帖被drds_rd在2017-05-04 14:44重新编辑 ]
发帖
170
云币
213
只看该作者 6楼 发表于: 05-04
Application was streaming results when the connection failed.

问题:在做大结果集查询或者大数据量的INSERT...SELECT操作时,DRDS报错,Application was streaming results when the connection failed. Consider raising value of 'net_write_timeout' on the server.


关键字: 数据导入 连接断开


解答:请将您的RDS实例的访问模式从高安全模式切换到普通模式。切换方法如图所示:






[ 此帖被drds_rd在2017-05-04 21:01重新编辑 ]
发帖
170
云币
213
只看该作者 7楼 发表于: 05-10
通过DTS从RDS往DRDS导入数据后,DRDS的Seuqence为何没有更新并导致主键冲突?
问题:
通过DTS从RDS往DRDS导入数据后,DRDS的Seuqence为何没有更新?导致应用不填主键自增列会导致主键冲突?

关键字:
数据导入  Seuqence  主键冲突

解答:
用户从RDS 往DRDS导入数据时,通常所有的 insert的SQL因为都是显式指定了主键自增的值, 所以即使数据导入后,也不会触发DRDS自动更新Sequence的取值。所以,当用户的应用尝试insert并且不填写自增列的值时,DRDS这里还是使用老的sequence值,这种情况下,应用需要通过DRDS的sequence的DDL, 手工调整一下DRDS的sequence的值。

解决方案:
用户参考 https://help.aliyun.com/document_detail/51752.html,使用Sequence 的DDL, 自主调整一下Sequence的最大值。

[ 此帖被drds_rd在2017-07-03 23:04重新编辑 ]
发帖
170
云币
213
只看该作者 8楼 发表于: 05-15
DRDS 是表名大小写不敏感吗?可以修改吗?
问题:DRDS 是表名大小写不敏感吗?可以修改吗?


关键字:表名、大小写敏感


解答:DRDS的表名大小写不敏感,也不可以进行修改。
[ 此帖被drds_rd在2017-05-15 15:40重新编辑 ]
发帖
170
云币
213
只看该作者 9楼 发表于: 05-16
DRDS的拆分键是字符串的时候,值是否大小写敏感?
问题:DRDS的拆分键是字符串的时候,值是否区大小写敏感?

关键字:拆分键、大小写敏感

解答:DRDS的拆分键,在进行路由的哈希计算的时候,是大小写敏感的,但进行数据匹配的时候,取决于字段的定义。

例如:
1.对于同一个拆分键name的不同值"a"与"A",可能路由到不同的分片;
2.假如"a"与"A"恰好哈希值相同,路由到了同一个分片,那么能否根据name="a"匹配到name="A",取决于name字段的collate属性,如果collate大小写不敏感,则能匹配到,如果敏感,则匹配不到。

从这点上我们能得到的一个实践原则是,对于拆分键,数据怎么写入的,需要用同样的值去查,例如写入的是name="a",那么查询的时候也用name="a"去查,而不要用name="A"。




[ 此帖被drds_rd在2017-05-16 16:38重新编辑 ]
发帖
170
云币
213
只看该作者 10楼 发表于: 05-16
DRDS 下如何使用联合主键?
问题:DRDS 下如何使用联合主键?

关键字:拆分键、联合主键

解答:DRDS 中只有包含拆分键的唯一索引能够生效。DRDS 上使用联合主键,如果联合主键中没有包含拆分键,则只能在分表内检查唯一性。

例如:
1. 假设逻辑表表 tb_a 有两张物理分表 tb_a_0 和 tb_a_1
2. 如果联合主键中包含拆分键 sk,则能够维持联合主键的语义(此时等效于直接使用 sk 作为主键)
3. 如果联合主键中没有包含拆分键 sk,则联合主键只能在 tb_a_0 和 tb_a_1 内部保持语义,tb_a_0 和 tb_a_1 之间的数据任然可能重复
4. 以上现象同样适用于唯一键和唯一主键


[ 此帖被drds_rd在2017-05-16 17:18重新编辑 ]
发帖
170
云币
213
只看该作者 11楼 发表于: 05-17
DRDS是否支持跨逻辑库访问?
问题:DRDS是否支持跨逻辑库访问?比如默认连接的是 db1,但执行的 SQL是 SELECT * FROM db2.tab1; 或 SELECT * FROM db1.tab1 JOIN db2.tab2 ON db1.tab1.fk = db2.tab2.id

关键字:跨逻辑库

解答:DRDS 不支持跨逻辑库访问,连接哪个逻辑库就只能访问该逻辑库下的表。

[ 此帖被drds_rd在2017-05-17 16:21重新编辑 ]
发帖
170
云币
213
只看该作者 12楼 发表于: 05-18
如何查看DRDS上有哪些连接?(如何查看有哪些机器、用户连接了DRDS?)
问题:我想查看目前DRDS上有哪些机器、用户连接了上来,应该怎么做?

关键字:查看连接

解答:在DRDS上执行SHOW CONNECTION指令,即可查看目前DRDS上有哪些连接过来。

注意:目前VPC网络内的DRDS暂时无法获取客户端的正确IP,经典网络内的DRDS可以正确的获取客户端的IP。




[ 此帖被drds_rd在2017-07-07 13:42重新编辑 ]
发帖
170
云币
213
只看该作者 13楼 发表于: 05-22
如何在DRDS开启分布式事务(GTS)?
关键字:GTS

目前 GTS(分布式事务服务)在 DRDS 控制台中默认允许申请(可以看到申请按钮),以下情况无法申请:

1. 用户的 DRDS 实例为共享实例
2. 用户 DRDS 实例所在的 region 还没有得到 GTS 的支持

点击申请后,请等待 GTS 审批,看到审批通过的状态后,请联系 DRDS 重启实例使 GTS 生效(重启仅需一次,后续同一实例新建库无需重启)。

更多 GTS 相关的信息,参见文章
https://help.aliyun.com/document_detail/48356.html
[ 此帖被drds_rd在2017-08-08 10:31重新编辑 ]
发帖
170
云币
213
只看该作者 14楼 发表于: 05-31
DRDS怎么对查询进行KILL?
问题 :DRDS怎么对查询进行KILL?

关键字 :KILL, 慢查询

解答 : 请参考,SHOW PROCESSLIST 指令与 KILL 指令
[ 此帖被drds_rd在2017-07-12 14:02重新编辑 ]
发表主题 回复主题
« 返回列表
«12345678910»
共10页
上一主题下一主题

限100 字节
批量上传需要先选择文件,再选择上传
 
验证问题: 阿里云官网域名是什么? 正确答案:www.aliyun.com
上一个 下一个