强制路由

    Hint 在读写分离场景下,主要用于强制在主库进行某些数据操作。

    1. 调用 获取 HintManager 实例;
    2. 调用 HintManager.setWriteRouteOnly() 方法设置主库路由标记;
    3. 执行 SQL 语句完成路由和执行;
    4. 调用 HintManager.close() 清理 ThreadLocal 中的内容。

    使用手动编程的方式

    获取 HintManager
    设置主库路由

    使用 hintManager.setWriteRouteOnly 设置主库路由。

    清除分片键值
    完整代码示例

    使用 SQL 注释的方式

    使用规范

    SQL Hint 功能的注释格式暂时只支持 /* */,内容需要以 开始,属性名为 WRITE_ROUTE_ONLY

    完整示例

    使用 Hint 路由至指定数据库

    使用手动编程的方式

    获取 HintManager
    设置路由至指定数据库
    • 使用 hintManager.setDataSourceName 设置数据库名称。
    完整代码示例

    使用 SQL 注释的方式

    使用规范

    SQL Hint 功能目前只支持路由至一个数据源。 注释格式暂时只支持 /* */,内容需要以 开始,属性名为 DATA_SOURCE_NAME。 如果使用 MySQL 客户端连接需要添加 -c 选项保留注释,客户端默认是 过滤注释。

    完整示例