2011-09-18 153 views
1

我有一个运行在负载平衡环境(2个Windows服务器)上的ASP.Net网站。它连接到运行在两台运行Ubuntu的Linux服务器上的集群MySql数据库。使用.Net连接器配置MySql集群故障转移

在试图通过我们的JetNexus负载均衡器路由MySql数据时,我们遇到了很多错误,所以我试图找出是否有某种方式来配置单个Web服务器自动数据库服务器故障转移检测。如果我使用MS-SQL,我会使用“故障转移伙伴”参数配置连接字符串,但MySql不支持该参数。还有没有其他的东西呢,还是有这个问题的替代解决方案?

额外的信息:

  • 我使用MySQL连接器6.4.3,ASP.Net 4.0,MVC 3.0,数据库运行MySQL集群7.1.15a,cluster_server 5.1

  • 我已经尝试在连接文件中指定多个MySql主机(使用“server = 192.168.0.1 & 192.168.0.2”),虽然这似乎起作用,但它不会自动检测到故障转移并崩溃,只要我拿出其中一个数据库。

  • 我遇到过一种叫做“MySQL代理”的东西,看上去应该符合法案,但我们有一个硬件负载平衡器,所以我会花时间试着让它正常工作,而不是实施一个额外的软件代理。

  • 我们得到的错误是“System.IO.EndOfStreamException:试图读取流的结尾”。当我们通过负载平衡器运行MySql时,会间歇性地发生这种情况。这是一个单独的问题,可能与问题没有关系,但为了完整起见,我已将其包含在此处。

感谢您的阅读!

回答

1

我不完全理解的MySQL Cluster(从来没有使用过),但我建议:

是否有可能把集群服务器的单个IP下?那么Ubuntu或MySQL群集负载平衡处理故障转移?