首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maxscale:组合readwritesplit和schemarouter

Maxscale:组合readwritesplit和schemarouter
EN

Stack Overflow用户
提问于 2017-02-10 23:38:19
回答 1查看 347关注 0票数 0

我正在尝试将maxscale设置为使用schemarouter和readwritesplit。我的mysql数据库有很多分片。每个分片都有一个从分片,所以我们的想法是在主分片上使用一个schemarouter,在从分片上使用一个schemarouter来代理所有分片。然后在readwritesplit中使用这两个服务。

代码语言:javascript
复制
This cause the following issue:
2017-02-10 14:57:48   error  : Failure loading users data from backend [10.161.66.145:4009] for service [Splitter Service]. MySQL error 2013, Lost connection to MySQL server at 'handshake: waiting for inital communication packet', system error: 110
2017-02-10 14:57:52   error  : Failure loading users data from backend [10.161.66.145:4008] for service [Splitter Service]. MySQL error 2013, Lost connection to MySQL server at 'reading authorization packet', system error: 110
2017-02-10 14:57:52   error  : Unable to get user data from backend database for service [Splitter Service]. Failed to connect to any of the backend databases.

任何帮助都会很好。

我的schemarouter都工作得很好。下面是readwritesplit配置:

代码语言:javascript
复制
[max_ro]
type=server
address=10.10.10.10
port=4009
protocol=MySQLBackend

[max_rw]
type=server
address=10.10.10.10
port=4008
protocol=MySQLBackend

[Splitter Service]
type=service
router=readwritesplit
servers=max_ro,max_rw
user=maxscale
passwd=maxscale

[Splitter Listener]
type=listener
service=Splitter Service
protocol=MySQLClient
port=4010

谢谢

EN

回答 1

Stack Overflow用户

发布于 2017-03-17 22:13:26

这些错误很可能是由readwritesplit服务尚未启动这一事实引起的。MariaDB Jira上有关于此行为的错误报告。

如果分片服务工作正常,并且在MaxScale启动后没有记录更多的错误,则一切都按预期工作,并且可以忽略错误,如this bug report中所述。

解决此问题的另一种方法是将配置分成两部分,并使用单独的MaxScale实例;一个用于分片服务,另一个用于读写拆分服务。这确实增加了额外的复杂性,因为需要启动两个服务而不是一个服务。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42163199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档