Hint #
DBPlusEngine 支持使用 Hint 的方式来影响中间层路由,以达到灵活使用 DBPlusEngine 的目的,DBPlusEngine 的 Hint 和原生数据库的 Hint 功能不同,可以看成是 DBPlusEngine 的一种特有使用方式。
建议 #
- 分片字段不存在于 SQL 和数据库表结构中,而存在于外部业务逻辑,可以使用 Hint 方式来强制路由;
- 业务场景存在某些场景,需要强制在主库进行操作,以保证数据强一致性的场景。
示例 #
- 读写分离 Hint 的使用示例:
用户通过调用
HintManager.setWriteRouteOnly()
方法设置主库路由标记,或者使用 SQL Hint 来实现读写分离场景下的强制主库路由。SQL Hint 注释格式暂时只支持/* */
,内容需要以ShardingSphere hint:
开始,属性名为WRITE_ROUTE_ONLY
。
/* SPHEREEX_HINT: WRITE_ROUTE_ONLY=true */
SELECT * FROM t_order;
然后执行 SQL 语句实现强制主库路由。