tencent cloud

TDSQL MySQL 版

公告
告警升级公告
产品简介
产品概述
产品优势
应用场景
地域和可用区
InnoDB 引擎
购买指南
计费概述(InnoDB)
产品定价(InnoDB)
购买升级
退费说明
欠费说明
备份空间计费
快速入门
InnoDB 引擎
操作指南(InnoDB)
实例管理
灾备/只读实例
修改网络
账号管理
安全管理
慢查询分析
备份与回档
数据迁移
数据库审计
实践教程
从单机实例导入到分布式实例
从分布式实例导入到分布式实例
选择实例配置和分片配置
安全白皮书
平台侧安全设计
租户侧安全功能
开发指南
InnoDB 引擎
API 文档
History
Introduction
API Category
Security Group APIs
Other APIs
Making API Requests
TDSQL APIs
Data Types
Error Codes
常见问题
InnoDB 引擎相关
通用参考
强同步性能对比数据
词汇表
联系我们

透传 SQL

PDF
聚焦模式
字号
最后更新时间: 2024-01-06 12:31:07
TDSQL MySQL 版实例会对 SQL 进行语法解析,有一定的限制,如果用户想在某个节点(set)中执行 MySQL 支持,但分布式实例不支持的 SQL 时,可以使用透传 SQL 的功能。
说明:
透传 SQL 时,proxy 不会解析 SQL,如果是往两个 set 进行透传写操作,不会使用分布式事务,特殊情况下会发生不一致问题,因此对于写操作建议一次透传一个 set。
为保证透传语法生效,连接 MySQL 时请使用 -c 参数。
MySQL [test]> repair table test.t1;
ERROR 664 (HY000): Proxy ERROR:SQL is too complex, only applicable to noshard table: Shard table do not support repair
MySQL [test]> /*sets:allsets*/repair table test.t1;
+---------+--------+----------+----------+------------------+
| Table | Op | Msg_type | Msg_text | info |
+---------+--------+----------+----------+------------------+
| test.t1 | repair | status | OK | set_1544429866_3 |
| test.t1 | repair | status | OK | set_1544429718_1 |
+---------+--------+----------+----------+------------------+
2 rows in set (0.01 sec)
具体语法:
sets:set_1,set_2:代表指定某几个 set,set 名字可以通过/*proxy*/show status查询。
sets:allsets:代表指定全部 set。
shardkey:10:代表支持透传 SQL 到 shardkey 对应值上的 set。
shardkey_hash:10:透传到负责 hash 值为10的 set,如果为0,则发送到第一个 set 上。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈