2012-08-15 36 views
1

关于MySQL主从机设置窗口快捷提问:MySQL的主从从配置

我现在有一个主从树立正确的,现在我想补充另一个奴隶。是否有可能克隆运行从服务器的服务器,然后利用从服务器上的映像启动一台新服务器,并让它正确地从停止的位置启动?因此,无论binlog在复制时它会运行,直到它赶上主人?

理想情况下 - 我试图启动另一个slave,连接到master而不关闭master进行备份。任何建议或指导将是伟大的。谢谢!

+1

您可能想考虑在[DBA.SE](http://dba.stackexchange.com/)上提问这样的问题,他们可能对MySQL的非重要设置有更多的了解。 – derobert 2012-08-15 16:09:42

回答

2

是的,这是可能的。最好的办法可能是临时暂停从服务器上的复制,确定主二进制日志的位置信息,然后在复制仍然暂停(并且副本上没有其他数据正在改变)时从副本进行转储。转储完成后,您可以重新启动副本。

在新服务器上,只需安装转储,设置binlog坐标并启动复制。尽管如此,一句警告。确保清除主服务器上的二进制日志的设置将允许将二进制日志保留足够长的时间,以便您可以执行此设置过程,并在清除bin日志之前让新服务器赶上。

+1

我想他是问他是否可以为他的活动MySQL从服务器创建一个文字快照,启动它,并让它的行为好像从启动快照的地方开始(以避免执行数据转储并重新加载它) – Michael 2012-08-15 16:07:59

4

是的,您可以关闭从机实例,并将其所有数据复制到另一个从机(包括日志)。
不要忘记编辑my.cnf在第二从属(你应该改变server-id
然后启动这两个从属服务器

+0

它会在“关闭”之前提取它停止的位置?当你说“关闭它”时,我假设你停止从站读取日志(或停止主从通信),对吧? – gregavola 2012-08-15 16:11:40

+1

当你关闭slave实例时,它也停止读取日志。所以所有的数据都是一致的 – CyberDem0n 2012-08-15 16:15:37

0

这里有一个很好的教程如何设置多个复制奴隶主服务器: http://arcib.dowling.edu/cgi-bin/info2html?%28mysql%29replication-howto

它没有解释你的情况,但给出了重要的提示:你必须为你的第二个从属设备分配一个唯一的服务器ID。

关于你的问题:如果你的主人二进制日志保持足够长的时间,你不应该陷入困境。只需关闭你的奴隶一会,克隆它并记下奴隶的MASTER_LOG_FILE和MASTER_LOG_POS;然后重新启动原来的从站并正确设置第二个从站:这意味着在给定的MASTER_LOG_POS和* _FILE集合以及my.cnf中唯一的服务器ID;

然后启动你的第二个奴隶。使用“START SLAVE”开始复制,然后查看“SHOW SLAVE STATUS;”

问候, 斯特凡

PS:不能答应这个工作,但我不干肯定它应该做的。

0

您可以使用现有的MySQL从做一个新的只是做下面的步骤,对从

  1. 停止复制。
  2. 执行show slave status;,并注意这些值Master_Log_File: master-bin.000002 & Read_Master_Log_Pos: 1307
  3. 采取mysqldump而且新的MySQL从服务器上恢复,您可以从现有的MySQL从服务器复制文件my.cnf,只是改变server-id
  4. 执行change master to命令在新的从属服务器上提供mysql主服务器的详细信息以及从现有mysql从服务器获得的日志文件名和日志位置。
  5. 在现有的mysql slave上执行start slave;
  6. 验证从站状态运行show slave status

这就是它你有一个新的MySQL从服务器!

祝你好运!