sharding分表应用笔记(四)——踩坑记录(更新中)
目录1 sql语句使用时不带分表关键字段
如果不带分表关键字段,会默认进行全节点域遍历。如果没有预先创建所有的表节点,会报错提示找不到对应的表。如果表节点已经全部存在,则不会报错可以正常执行。
注意:
- 通常并不会一次性把所有的表节点全部建立;
- 即使可以正常执行,但是因为是在全节点域遍历,所以可能会对数据库产生较大压力,建议强制所有的sql语句对关键字段进行限制;
- 默认的的全节点域仅为配置中的节点,如果在自定义分表策略中有额外的节点注入(如历史表),将不会出现在节点列表中。
2 在事务中触发数据源路由
在事务创建时,会建立当前connection的缓存,所以在一个事务中数据源的配置始终和进入事务时的配置相同;如果想要在事务中使用其他的数据源,需要提前进行切换,或者在事务中创建新的事务。
标签:事务,关键字,数据源,笔记,分表,sharding,节点 From: https://www.cnblogs.com/nagiumi-misaka/p/17849592.html