Att säkra sin data är viktigt, det håller jag med om!
Tyvärr är inget av de två sätten att görra detta på (skript som automatiskt körs regelbundet eller replikering) helt enkelt att få till bra. Det är oftast inte överdrivet svårt att sätta upp från början, men man bör ha väl genomtänkta rutiner för hur man återställer data från backupen eller fortsätter jobba med den replikerade databasen om något har hänt. Det är oftast här det brister.
Med backupskript som körs automatiskt var tionde minut så kan man ju relativt enkelt komma tillbaka till det state man var i när senaste backupen kördes. För att sedan återskapa den data som tillkommit i systemet under tiden mellan senaste backupen och databaskraschen får man läsa in loggfilerna från de klienter där man läst av löparbrickor. Om man dessutom har vanan att skriva ned alla ändringar som sekretariatet gör i tävlingsdatabasen (t ex brickändringar, godkänna stämplingar i kartan osv) på papper så går det att återskapa även detta.
Om man använder sig av databasreplikering slipper man som regel ifrån detta, men jag vill påstå att för den som inte är expert på MySQL så är det snäppet svårare att sätta upp. Dessutom vill jag avråda från att ha en OLA-server igång mot repliken "utifall att". Databasrepliken bör vara skrivskyddad för att hindra att någon gör ändringar i den, vilket kan leda till att replikeringen inte längre fungerar. Om man har en OLA-server ansluten mot en skrivskyddad databas riskerar man att få en massa felmeddelanden om "databasfel" i OLA om man är ansluten mot den servern, vilket kostar mer i förvirring än vad man tjänar på tiden det tar att starta en OLA-server när den behövs. Dessutom behöver ju alla klienter koppla ned från den ordinarie OLA-servern och koppla upp sig mot reserven om man använder sig av det förfarandet. Om man istället tillfälligt stoppar sin ordinarie OLA-server, pekar om den mot databasrepliken och så startar den igen så kan klienterna fortsätta där de var utan att behöva starta om eller ändra inställningar.
Databasreplikering skyddar heller inte mot felaktiga skrivningar, t ex på grund av en bugg i OLA. Dessa sprid ju till repliken också. Så om man använder sig av replikering så tycker jag att man bör ha automatiska backupskript också, för att ha ett heltäckande skydd. Om man vet vad man gör så går det något snabbare att återställa driften till en databasreplik än om man behöver läsa in backuper.
Med tanke på komplexiteten i replikering tycker jag att det är något som man kan lämna till de större/viktigare tävlingarna. Hit räknar jag Swedish League, SM, O-ringen och de stora stafetterna. Övriga klarar sig bra med regelbunden automatisk backup och en reservserver med installerad MySQL som man kan läsa in backupen till om så behövs.