# 《Mycat核心技术》第08章:Mycat的限制

作者:冰河
星球:http://m6z.cn/6aeFbs (opens new window)
博客:https://binghe.gitcode.host (opens new window)
文章汇总:https://binghe.gitcode.host/md/all/all.html (opens new window)
星球项目地址:https://binghe.gitcode.host/md/zsxq/introduce.html (opens new window)

沉淀,成长,突破,帮助他人,成就自我。

  • 本章难度:★★☆☆☆
  • 本章重点:介绍Mycat的限制,也就是使用Mycat的局限性,在实际场景下,能够清晰的认识到Mycat的局限性所带来的限制。

大家好,我是CurleyG~~

今天给大家介绍《Mycat核心技术》的第08章:给大家简单介绍下Mycat的限制,好了,开始今天的内容。

# 一、不支持的SQL语句

create table like xxx
create table select xxx
select for update
select lock in share mode
select into outfile/into var_name
1
2
3
4
5
  • 不支持跨库多表关联查询、子查询。

  • 不支持多表UPDATE或者UPDATE分片键。

  • 不支持跨分片的update/delete [order by] limit

# 二、Mycat对事务的支持有限

  • Mycat只支持弱分布式事务。

  • 如果事务commit后某节点失效,则无法保证事务的一致性。

# 三、Mycat不适用的场景

  • 使用到不支持的SQL的场景

  • 需要跨分片关联查询的场景

  • 需要保证跨分片事务强一致性的场景