Here's the scenario. You have three hosts, a master (M) and two replicas (R and S).o
M
/ \
R S
You want to move the replica S so that its master is R, like so:
# Imported old TTYtter config for oysttyer. | |
# Now using OAuth, with key in .ttytterkey | |
ansi=1 | |
ssl=1 | |
vcheck=1 | |
# Not needed with the streaming API. | |
# mentions=1 | |
verify=1 | |
dostream=1 |
#Remastering MySQL Replicas
The scenario here is that we have two replicas, A and B, which both share a master M. We want to make B a replica of A, so that the replication chain goes M > A > B. A prerequesite is that A needs to have binary logging enabled with log_slave_updates
turned on, and A should not be receiving any local writes other than from replication.
In order to achieve the switch we need to have a single point in time at which we know both A's replicaton position relative to the master M, and A's own binary log position. Then we need to make B reach the exact same position relative to the master, at which point we can change master to point at the corresponding coordinates on A.
This procedure involves stopping and restarting replication on both replicas; very briefly on A, but a couple of times on B. It shouldn't be performed on hosts that are especially sensitive to replication delay. However even when carrying out this process by hand the delay shouldn't exceed more than a few minutes,
#!/bin/bash | |
ksp="$HOME/Library/Application Support/Steam/SteamApps/common/Kerbal Space Program/KSP.app/Contents" | |
unity="/Applications/Unity/Unity.app/Contents/PlaybackEngines/MacStandaloneSupport/Variations/macosx64_nondevelopment_mono/UnityPlayer.app/Contents" | |
transfer() { | |
# Take an optional destination argument in case the destination file has a different name. | |
if [ "Z$2" != "Z" ] | |
then | |
dest=$2 |
oysttyer(13252,0x7fff7e679000) malloc: *** error for object 0x7fef3cb0f228: pointer being freed was not allocated | |
*** set a breakpoint in malloc_error_break to debug |
<html> | |
<head> | |
<title>OMGCIRCLES!!1!</title> | |
</head> | |
<body> | |
<canvas id="myCanvas" width="800" height="600"> | |
Fallback content, in case the browser does not support Canvas. | |
</canvas> | |
<script> | |
var myCanvas, context; |
>>> @Rementer_07035 just favorited @johndalton's tweet: "I wouldn't even know who Tom Waterhouse was if not for all the whingeing. You interfere with sportsball at your peril in this country." | |
u2> <keithpitt> Get a logo designed in the style of a Japanese TV Show on @MicrolancerBeta https://www.microlancer.com/explore/logo-design/1114-logo-design-for-tv-show/preview/7229 | |
>>> @Rementer_07035 just unfavorited @johndalton's tweet: "I wouldn't even know who Tom Waterhouse was if not for all the whingeing. You interfere with sportsball at your peril in this country." | |
>>> @Rementer_07035 just favorited @johndalton's tweet: "I wouldn't even know who Tom Waterhouse was if not for all the whingeing. You interfere with sportsball at your peril in this country." | |
u3> <%BrionyKidd> RT @AWG_1: We were at @ScreenNSW & @ScreenAustralia's #fword female storytelling @vivid_ideas event on Wed - if you missed it: http://www.youtube.com/user/ScreenNSW/videos | |
>>> @Rementer_07035 just unfavorited @johndalton's tweet: "I wouldn't ev |
D, [2013-05-15T20:15:07.836205 #6104] DEBUG -- : API call path: "dna", data: {} | |
E, [2013-05-15T20:15:07.968689 #6104] ERROR -- : Failed to fetch DNA: Waiting for instances to be ready: [nil]: {"instance_ids"=>[nil]} | |
E, [2013-05-15T20:15:07.969028 #6104] ERROR -- : Got an exception: API request failed: RestClient::ServiceUnavailable: 503 Service Unavailable | |
D, [2013-05-15T20:15:07.969380 #6104] DEBUG -- : /usr/local/ey_resin/ruby/lib/ruby/gems/1.8/gems/rest-client-1.6.7/lib/restclient/abstract_response.rb:48:in `return!' | |
/usr/local/ey_resin/ruby/lib/ruby/gems/1.8/gems/rest-client-1.6.7/lib/restclient/request.rb:230:in `process_result' | |
/usr/local/ey_resin/ruby/lib/ruby/gems/1.8/gems/rest-client-1.6.7/lib/restclient/request.rb:178:in `transmit' | |
/usr/local/ey_resin/ruby/lib/ruby/1.8/net/http.rb:543:in `start' | |
/usr/local/ey_resin/ruby/lib/ruby/gems/1.8/gems/rest-client-1.6.7/lib/restclient/request.rb:172:in `transmit' | |
/usr/local/ey_resin/ruby/lib/ruby/gems/1.8/gems/rest-client-1.6.7/lib/restclient/reques |
2012-09-28 15:59:57+1000 [-] [notifications] 2012-09-28 15:59:57+1000 [-] Log opened. | |
2012-09-28 15:59:57+1000 [-] [notifications] 2012-09-28 15:59:57+1000 [-] twistd 12.0.0 (/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python 2.7.2) starting up. | |
2012-09-28 15:59:57+1000 [-] [notifications] 2012-09-28 15:59:57+1000 [-] reactor class: twext.internet.kqreactor.KQueueReactor. | |
2012-09-28 15:59:57+1000 [-] [notifications] 2012-09-28 15:59:57+1000 [-] AMPPushNotifierFactory starting on 62311 | |
2012-09-28 15:59:57+1000 [-] [notifications] 2012-09-28 15:59:57+1000 [-] InternalNotificationFactory starting on 62309 | |
2012-09-28 15:59:57+1000 [-] [notifications] 2012-09-28 15:59:57+1000 [-] set uid/gid 93/93 | |
2012-09-28 15:59:57+1000 [-] [notifications] 2012-09-28 15:59:57+1000 [-] Traceback (most recent call last): | |
2012-09-28 15:59:57+1000 [-] [notifications] 2012-09-28 15:59:57+1000 [-] File "/usr/bin/twistd", line 14, in <module> | |
2012-09-28 15:59:57+1000 [-] [notifications |