Turinys
MongoDB yra labai populiari „NoSQL“ duomenų bazė. Jis dažnai naudojamas programų duomenims ir svetainės informacijai saugoti ir tvarkyti. „MongoDB“ turi dinamišką schemos dizainą, lengvą mastelio keitimą ir duomenų formatą, kuris yra lengvai pasiekiamas programiškai.Pamatysime, kaip sukonfigūruoti duomenų replikaciją, kad būtų užtikrintas didelis duomenų prieinamumas ir sukurta patikima perjungimo sistema. Tai svarbu bet kurioje gamybos aplinkoje, kai duomenų bazės veikimas neigiamai paveiks jūsų organizaciją ar verslą.
Kas yra „MongoDB“ replikacijos rinkinys?
„MongoDB“ tvarko replikaciją naudodami programą, pavadintą „Replication Sets“. Replikavimo rinkiniai savo pagrindine forma yra šiek tiek panašūs į mazgus pagrindinėje / pavaldžioje konfigūracijoje. Vienas iš tėvų yra naudojamas kaip pagrindas taikyti pakeitimus vaikams.
Skirtumas tarp replikacijos rinkinio ir pagrindinio pavaldinio replikacijos yra tas, kad replikacijos rinkinys turi būdingą automatinį perjungimo mechanizmą, jei pirminis narys nepasiekiamas.
Pirminis narys: pagrindinis narys yra numatytasis prieigos taškas operacijoms su replikacijos rinkiniu. Tai vienintelis narys, galintis priimti rašymo operacijas.
Kiekviename replikacijos rinkinyje vienu metu gali būti tik vienas pagrindinis narys. Taip yra todėl, kad replikacija vyksta kopijuojant operacijų žurnalą ir kartojant antrinio replikacijos duomenų rinkinio pakeitimus. Jei keli pirminiai nariai priimtų rašymo operacijas, tai sukeltų duomenų konfliktus.
Vaikai - pakartojimo rinkinyje gali būti keli vaikai. Antriniai nariai atkuria pakeitimus iš operacijų žurnalo savo duomenyse
Nors programos pagal numatytuosius nustatymus pateikia užklausą pagrindiniam nariui tiek skaityti, tiek rašyti, galite sukonfigūruoti savo nustatymus skaityti iš vieno ar kelių antrinių narių. Antrinis narys gali tapti pagrindiniu, jei pirminis atsijungia arba žingsniuoja.
Norėdami sukonfigūruoti replikaciją, pirmiausia pridedame IP prie pagrindinio kompiuterio.
nano / etc / hosts 127.0.0.1 localhost mongo0 123.456.789.111 mongo0.domain.com 123.456.789.222 mongo1.domain.com 123.456.789.333 mongo2.domain.com
Redaguokite failą / etc / hostname:
nano / etc / hostname mongo0.example.com
Dabar turime padaryti, kad paleistume „MongoDB“ konfigūraciją, kad sustabdytume „MongoDB“ procesą kiekviename serveryje.
paslaugų mongodb stotelė
Dabar turime sukurti katalogą, kuris bus naudojamas mūsų duomenims saugoti. Sukurkite katalogą naudodami šią komandą:
mkdir / mongo-metaduomenys
Kad atspindėtų mūsų naują replikacijos rinkinio konfigūraciją
nano / etc / mongodb.conf dbpath = / mongo-metaduomenų prievadas = 27017 replSet = rs0 šakutė = tiesa
Išsaugokite ir uždarykite failą. Paleiskite replikacijos narį išleisdami šią komandą:
mongod --config / etc / mongodb.conf
Šie veiksmai turi būti kartojami kiekvienam replikų rinkinio nariui.
Pradėkite replikavimo rinkinį
Dabar, kai sukonfigūravote kiekvieną replikacijos rinkinio narį ir pradėjote „mongod“ procesą kiekviename kompiuteryje, galite pradėti replikaciją ir pridėti kiekvieną narį.
Viename iš savo narių parašykite:
mongo
Tai suteiks jums „MongoDB“ raginimą dabartiniam nariui.
Pradėkite replikacijos derinimą įvesdami:
rs.initiate ()
Tai pradės replikavimo rinkinį ir pridės serverį, prie kurio esate prisijungę, kaip pirmąjį rinkinio narį. Tai galima pamatyti įvedus:
rs.conf () {"_id": "rs0" "versija": 1, "nariai": [{"_id": 0, "host" "mongo0.example.com: 27017"}}
Dabar galite pridėti mazgus prie kopijos rinkinio, nurodydami pagrindinio kompiuterio pavadinimą, kurį jiems suteikėte faile / etc / hosts:
rs.add ("mongo1.example.com") {"Gerai": 1}
Padarykite tai kiekvienam likusiam replikacijos nariui. Dabar jūsų replikacijos rinkinys turėtų būti paleistas ir paleistas.Ar jums patiko ir padėjo ši pamoka?Galite apdovanoti autorių paspausdami šį mygtuką, kad suteiktumėte jam teigiamą tašką