我在MySQL论坛上也问过同样的问题,但在这里也看到了很多很好的回应,所以我想我也会在这里试试运气。
我们有一个相对较大的MySQL环境,我们目前正在使用MySQL主从复制来实现性能要求。我们通常有10个主机组成的多个集群,其中一个是读写,另一个是只读。我们也是非常敏感的性能,所以目前正在使用FusionIO卡在每一个主机。
然而,我们在这个体系结构中发现了一些挑战,并且正在寻找其他的想法--特别是我们想要回到一个非常高速的共享存储解决方案,它将允许我们有一个DB的副本,在那里,主服务器可以将它作为读-写,奴隶作为只读的。
我知道,通过使用集群件,这种设计是可能的,但是我们倾向于不使用该产品,因为如果需要的话,我们可以使用一些手动故障转移过程。
以前有人做过这样的事吗?我知道MySQL支持安装为只读,“-innodb只读=1”,但是如果使用这种方法与它们现有的主从配置相比,还有什么其他含义呢?如果使用此参数,是否可以有一个作为读-写,而另一个是只读的?
谢谢你对此的任何想法。
发布于 2016-04-11 19:05:16
不是的。不要尝试让数据的一个副本具有多个mysqld访问副本。我不知道这是否奏效;如果成功了,我怀疑这些年来,随着改革的进行,它已经萎缩了。
好好想想..。服务器的每个副本都有大量缓存在RAM中的内容。要与其他服务器进行协调,就需要将内容写入磁盘;这违背了性能目标。当发生写入时,所有的跟踪都需要立即刷新到磁盘,所有其他服务器都需要知道读取它并替换RAMs中缓存的所有内容。
使用FusionIO,检查是否可以安全地关闭innodb_doublewrite。
每秒钟有多少次查询?你有什么“慢”查询吗?(也就是说,除了硬件之外,还有其他提高性能的方法。)
https://dba.stackexchange.com/questions/134931
复制相似问题