连接路由意味着将 MySQL 连接重定向到可用的 MySQL 服务器。MySQL数据包在没有检查的情况下被完整地路由。有关使用基本连接路由的示例部署,请参阅 第 3.3 节,“基本连接路由”。
应用程序连接到 MySQL Router 而不是直接连接到 MySQL Server,如果连接失败,那么应用程序会重试连接,因为 MySQL Router 在尝试失败后会选择一个新的 MySQL 服务器。这也称为简单重定向连接路由,因为它需要应用程序重试连接。也就是说,如果MySQL Router到MySQL服务器的连接中断,应用程序就会遇到连接失败。但是,新的连接尝试会触发 Router 查找并连接到另一个 MySQL 服务器。
路由服务器和路由策略在配置文件中定义。例如,以下部分告诉 MySQL Router 侦听本地主机的端口 7002 上的连接,然后将这些连接重定向到destinations
选项定义的 MySQL 实例,包括运行在本地主机上侦听端口 3306、3307 和 3308 的服务器。我们还使用
routing_strategy
选项来使用负载平衡的循环形式。有关其他信息,请参阅
第 4.3 节 “配置选项”
[routing:simple_redirect]
bind_port = 7002
routing_strategy = round-robin
destinations = localhost:3306,localhost:3307,localhost:3308
此示例部分的标题为
routing:simple_redirect
。第一部分
routing
是内部使用的部分名称,用于确定要加载的插件。第二部分 ,
simple_redirect
是一个可选的部分键,用于区分其他路由策略。
当服务器不再可达时,MySQL Router 移动到列表中的下一个服务器目的地,如果列表根据循环策略耗尽,则返回第一个服务器目的地。
在 MySQL Router 8.0 之前,使用现在已弃用
mode
的选项,而不是routing_strategy
MySQL Router 8.0 中添加的选项。