Replikointi MySQL Server -tuotteella - alustava selvitys - REFERAATTI Replikointi MySQL Server -tuotteella - alustava selvitys - Åke Tyvi
SISÄLTÖ KÄSITELTÄVÄT ASIAT Kuvataan MySQL Database Server 5.0.4 Beta –tuotteessa olevan replikoinnin tekninen toiminta Åke Tyvi Ake.Tyvi@curatores.info
ASIAN OPPIMISMOTIVOINTI Kuuntelija ymmärtää referaatin luettuansa mitä replikoinnilla tarkoitetaan, replikoinnilla saavutettavat edut ja haitat, MySQL Database Server –ohjelman tarjoamat kolme replikointitapaa, miten replikointi teknisesti toimii, miten replikointi on rakennettu tähän tuotteeseen ja miksi koko raportti on syytä lukea läpi. Åke Tyvi Ake.Tyvi@curatores.info
Replikointi MySQL Server -tuotteella - alustava selvitys – REFERAATTI Replikointi MySQL Server -tuotteella - alustava selvitys – TEKNIIKAN JA LIIKENTEEN TOIMIALA Sähkö- ja tietoliikennetekniikka Ohjelmistotekniikka Jotain muistiinpanoja tässä Åke Tyvi Ake.Tyvi@curatores.info
MITÄ REPLIKOINTI ON? Replikointi tarkoittaa lyhyesti kerrottuna tiedon kopioimista paikasta A paikkaan B. Tietojen automaattisessa päivityksessä vain muuttuneet tiedot kopioidaan A:lta B:lle. A:n kopiota B:ssä kutsutaan replikaatiksi. Åke Tyvi Ake.Tyvi@curatores.info
MITEN REPLIKOINTIA ON TUTKITTU? Selvitys on tehty MySQL AB:n MySQL Database Server 5.0.4 Beta –ohjelmistolla. Replikointi tehty selaus-/lukureplikaattina, ei transaktioreplikaattina ( jonka tutkiminen vaatisi lisäohjelmiston asentamisen tuotteeseen). Referaatissa tiivistettynä tieto MySQL Datrabase Server- tuotteen replikointiperiaatteesta ja kerrottu sen tekninen toiminta. Åke Tyvi Ake.Tyvi@curatores.info
MySQL-REPLIKOINTI MySQL Database Server tukee yksisuuntaista replikointia -> muutokset vieritetään isännältä orjalle. Åke Tyvi Ake.Tyvi@curatores.info
EDUT JA HAITAT Tieto monentamalla eli replikoimalla orja voi toimia tietovaraston varmuuskopiona, kysely- ja selaushaut voidaan kohdentaa orjakantaan, ja voidaan varmuuskopio ottaa orjasta isännän jatkaessa operatiivista toimintaa. Åke Tyvi Ake.Tyvi@curatores.info
MySQL REPLIKOINTITAVAT Kolme tapaa replikoita MySQL Database Server –tuotteella Päivitystapahtumia sisältävän ’staattisen’ tietokannan replikointi orjalle. Tapahtuma-alttiin isäntäkannan replikointi orjalle. Ketjutettu replikointi isäntä-orja –tyyppisesti. Åke Tyvi Ake.Tyvi@curatores.info
MySQL REPLIKOINTITAVAT Åke Tyvi Ake.Tyvi@curatores.info
TEKNINEN KUVAUS Åke Tyvi Ake.Tyvi@curatores.info
TEKNINEN KUVAUS Kirjataan binäärilokiin ylös kaikki tietokantaan kohdistuvat muutokset. Orja esittää isännälle päivityspyynnön pollaamalla sitä ja yhteyttä aika ajoin. Binääriloki siirretään orjan käsiteltäväksi. Orja käsittelee saamansa binäärilokin ja päivittää sen tietojen perusteella oman kantansa ajan tasalle. Orja kirjaa ylös mitä binäärikopioversiota ja tapahtumaa se käsittelee. Åke Tyvi Ake.Tyvi@curatores.info
IMPLEMENTOINTI TUOTTEESSA Åke Tyvi Ake.Tyvi@curatores.info
IMPLEMENTOINTI TUOTTEESSA Orja I/O-säie [ed. kuvan kohdat 1a ja 1b] Kytkeytyy ja ylläpitää yhteyttä isäntäkantaan. Pyytää isännältä kopion käsittelyyn tulevista binäärilokeista. Lukee ja varastoi isännän Binlog Dump –säikeen lähettämän tiedon viestiloki -tietohakemiston alle. Åke Tyvi Ake.Tyvi@curatores.info
IMPLEMENTOINTI TUOTTEESSA Orja SQL—säie [ed. kuvan kohdat 2a ja 2b] Käsittelee I/O-säikeen vastaanottamat binäärilokit ja päivittää orjatietokannan tiedot ajan tasalle. Kirjaa mitä binäärikopioversiota ja tapahtumaa se käsittelee. Åke Tyvi Ake.Tyvi@curatores.info
IMPLEMENTOINTI TUOTTEESSA Isäntä Binlog Dump –säie Luo säikeen ensimmäisellä orjakannan generoimalla kutsukerralla [ed. kuvan kohdat 2a] Vastaa orjan I/O-säikeen pyyntöihin ja toimittaa uuden binäärilokin orjan käsiteltäväksi. Åke Tyvi Ake.Tyvi@curatores.info
BINÄÄRILOKI Binäärilokiin tallentuvat ~ kaikki tietokantaa tai sen sisältämää tietoa muuttavat lausekkeet. Binäärilokia tarvitaan tietokannan tiedon palauttamisessa edeltävästä varmuuskopiosta sen nykyiseen tilaansa tai mahdollisimman lähelle viimeistä tietokantaan kohdistunutta tapahtumaa. Åke Tyvi Ake.Tyvi@curatores.info
BINÄÄRILOKI Åke Tyvi Ake.Tyvi@curatores.info
YHTEENVETO MySQL Database Server tulee replikointia, missä transaktioalttiissa ympäristössä tulee kantamuutokset kohdistaa isäntäkantaan ja vierittää sitä kautta orjille. Orja voi ottaa isännän paikan. Transaktioalttiissa ympäristössä tulee asentaa MySQL- tuotteeseen erillinen tapahtumahallintaohjelmisto. MySQL Database Server tukee kolmea replikointimallia. Åke Tyvi Ake.Tyvi@curatores.info