MySQL做分布式需要通过ndb的Cluster来实现。MySQLCluster是MySQL适合于分布式计算环境的高实用、高冗余版本。实现的步骤比较复杂,百度云案例:《MySQLCluster(MySQL集群)分布式》下载地址:
不是很理解,比如说你3台搭建分布式,你通过什么方式区分库表?假设每台服务器上部署一个mysql实例,那你怎么把数据分布到3个mysql里面?是每个mysql里面存不同的表么?如果这样,就还可以接受。这块问题不是很大。
第二个问题,你的HA主备,意思是说两个分布式互为主备?那怎么备份,怎么切换?
其实按照你想要达到的目标。应该是每两台互做主备,形成3对主备库,然后这3对再组建一个分布式集群。
其实和你要做的可能差不多,不过逻辑上还是有差异的。HA你准备怎么做?keepalived?
另外,咨询一下,你的分布式是通过什么来实现,不同业务访问不同的数据库,每个库存不同的表?还是相同的表分布在不同数据库?
看你服务器的配置如何,其实我觉得一般来说拿3台来做备机有点浪费,如果配置允许,可以考虑做成6套mysql主备的分布式集群。
通过交叉互备实现硬件的最大利用。下图是我们之前用4台服务器做的一套集群方案。
如果还有其他问题可以和我联系。
可以采用开源的MyCat解决方案,优点是免费,缺点是出现问题可能要自己解决或者去社区寻找解决方案;也可以采用北京万里开源软件有限公司的集群解决方案,后端使用开源的MySQL存储数据,优点是有任何问题他们都可以帮忙解决,而且不用担心系统后续的扩展、集群高可用等情况,他们的工程师还开发过MySQL核心代码,找他们可以睡个安稳觉,缺点是不免费,他们还有自己的国产数据库GreatDB,100%兼容MySQL。
对于初创企业,可以考虑选择免费的开源解决方案,毕竟遇到的问题可能有限,如果要想长期稳定发展,还是选择万里开源这样的公司比较靠谱一些。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)