List:Replication« Previous MessageNext Message »
From:Chris Kantarjiev Date:October 21 2009 1:58pm
Subject:Re: CHANGE MASTER
View as plain text  
>>> This should work: ensure that 'd' and 't' are in sync (have stopped at the
> same
>>> master log pos according to the SHOW SLAVE STATUS output), so that you can
> pick
>>> the correct position to use for CHANGE MASTER TO when switching 't' to 'd'
> (by
>>> executing SHOW MASTER STATUS on 'd'). Then you can switch over 't' to 'd'
> using
>>> these positions, run 'd' again to "empty" 'a' and then you can turn off 'a'.
>> This works when the failover of t from a to d is planned.

So, just to follow-up: I managed to do the switch. The slave 't' has had some network
problems 
recently, so its SQL thread is rather behind the master, even though all of the logs are
(finally) 
there. Which required a bit of extra care, since most CHANGE MASTER operations dump all
the existing 
relay logs (this seems like the wrong choice, but I'm sure there are situations when it is
the 
correct one). So I did

STOP SLAVE
SHOW SLAVE STATUS

to get the current relay log file and position, and included those values in the CHANGE
MASTER.

Unfortunately, the server didn't quite like that - it gave the error that it couldn't find
the 
specified file, even though it was clearly there. I check the relay-log.info file,
convinced myself 
that it had been set up correctly, and restarted the server. That seemed to work, and now
't' is 
pulling updates from 'd', and I've shut down 'a'.

Thanks, all.

Thread
CHANGE MASTERChris Kantarjiev18 Oct
  • Re: CHANGE MASTERMats Kindahl18 Oct
    • Re: CHANGE MASTERMARK CALLAGHAN18 Oct
      • Re: CHANGE MASTERMats Kindahl19 Oct
        • RE: CHANGE MASTERRick James19 Oct
        • Re: CHANGE MASTERChris Kantarjiev21 Oct
  • Re: CHANGE MASTERMats Kindahl20 Oct
    • RE: CHANGE MASTERRick James20 Oct
  • Re: CHANGE MASTERMats Kindahl20 Oct