Amoeba注意事项
与MySQL官方的MySQL Proxy相比,Amoeba配置是很方便的,它基于XML的配置文件,用SQLJEP语法书写规则,比基于lua脚本的MySQL Proxy简单。但它也不是完美无缺的,在实际使用中有很多需要注意的事项。接下来我们就来一一介绍Amoeba的一些注意事项。
零度电脑知识网www.needc.com电脑知识学习网站。电脑知识学习QQ群:81158926 欢迎电脑爱好者加入。
Amoeba不支持事务
目前Amoeba不支持事务,任何有关事务的SQL语句都会被Amoeba屏蔽掉。如果必须使用事务,而且事务内的处理操作都可以路由到同一台MySQL上的话,可以考虑在存储过程中使用事务进行处理。另外,Amoeba将来有望支持事务。
Amoeba不支持跨库join和排序
跨库的join和排序非常消耗资源,会导致性能严重下降,Amoeba没有进行支持。
Insert语句必须指定表的列名
Amoeba是根据SQL语句进行解析的,如果SQL语句中没有切分规则中的关键字,那么Amoeba就不会按照规则进行水平切分。比如,按照城市ID进行数据水平切分时,如下语句不会被正确切分:
INSERT INTO tb_Shop VALUES (1,5,'店铺的名称','店铺的地址',1,'2011-07-30');
而如下语句则可以正确切分:
INSERT INTO tb_Shop(Shop_ID,ity_ID,ShopName,Address,ShopStatus,CreateTime) VALUES (1,5,'店铺的名称','店铺的地址',1,'2011-07-30');
也就是说,切分规则中的关键字City_ID必须要在SQL语句中出现。
Amoeba不支持分库分表。
Amoeba不支持分库分表,只能分MySQL实例。
Amoeba不支持大数据量的查询。
大数据量的查询非常消耗内存,Amoeba在进行大数据量查询时性能会非常差。当然,实际业务中需要进行大数据量查询的情况会非常少或者根本没必要实现这种情况。这里所谓的大数据量查询指的是一次查询结果超过十万行。
Amoeba需要更严格的SQL语句规范
From 关键字后面如果不是子查询,一律不能带括号”()”;
如果的表中字段名与关键字或者函数名一样需要带上字符` (比如:mytable.`order`)。
关于Amoeba的一些注意事项的知识就介绍到这里了,希望本次的介绍能够对您有所收获!
相关文章
- 2017-07-042017年10月19日《巨影都市计划》
- 2017-07-07王者荣耀英语版,《王者荣耀欧美版》
- 2017-07-08腾讯“首款创新休闲竞技类”手游《欢乐球吃球》
- 2017-08-05为什么日文游戏全网禁售,淘宝电玩-关于日文游戏全网禁售通知
- 2017-08-12《守望先锋》死斗模式
- 2017-08-122018年卡牌游戏《黑暗之魂》
- 2017-08-15战争策略与历史文化背景的策略养成游戏《战争与文明》
- 2017-08-15《星际争霸重制版》国服上线时间与价格
- 2017-08-16《魔兽世界》真人挑战节目《奔跑吧!脚男》
- 2017-08-162017年8月16日开放式奇遇武侠手游《卧虎藏龙贰》
- 2017-08-23经营策略手游《火影忍者》《Naruto x Boruto: Borutage》
- 2017-09-02传奇悦享会“兄弟一起,悦享传奇”
- 2017-09-02冒险类手机游戏:小小大冒险
- 2017-09-11恋爱RPG手游《校园女生强袭者》
- 2017-09-23英雄联盟LOL国服第一“娇宝的老公李青强”(李青强此号已售)账号被封号一年