Кампутары, Базы дадзеных
Рэплікацыя MySQL. Кароткі экскурс
Рана ці позна перад любым адміністратарам ўзнікае праблема, калі магутнасці яго сервераў не хапае для выканання пастаўленых задач, а набыццё новай тэхнікі практычна немагчыма па прычыне фінансавых цяжкасцяў, ці проста такая купля выклікае сумнеў наконт яе акупнасці ў будучыні.
У святле такіх падзей не лішнім будзе даведацца пра такое паняцце, як рэплікацыя баз дадзеных. Падобныя веды значна спросцяць жыццё любому чалавеку, які займаецца абслугоўваннем высоконагруженных сістэм і дазволяць стварыць аптымальную рабочую апаратную канфігурацыю. У агульных рысах рэплікацыя базы дадзеных на ўвазе аб'яднанне магутнасцяў набору кампутараў для павышэння каэфіцыента прадукцыйнасці сістэмы і яе адмоваўстойлівасці. Першага эфекту можна дамагчыся шляхам перекидывания часткі запытаў на рэзервовы сервер, а другога - шляхам стварэння лакальнай копіі базы дадзеных, якая ў выпадку неабходнасці заменіць галоўную базу.
Найбольш просты і распаўсюджаны спосаб арганізацыі рэплікацыі - гэта рэплікацыя MySQL. Прычым MySQL падтрымлівае гэты функцыянал з 3.23.15-версіі і толькі аднабаковую рэплікацыю. У дадзеным выпадку ствараецца адмысловая канфігурацыя «master-slave», прычым галоўны сервер (master) можа таксама адначасова быць і падначаленым серверам (slave).
Рэплікацыя MySQL на дадзены момант часу рэалізоўваецца наступным чынам. Ствараецца галоўны сервер, у абавязкі якога ўваходзіць сачыць за зменамі двайковага файла, у якім адлюстроўваюцца ўсе змены базы дадзеных і падпарадкаваная машына або машыны, якія чытаюць i выконваюць з гэтага файла запыты. Падначалены сервер пастаянна звязваецца з галоўным, таму ўсе змены, якія адбыліся на master, пераходзяць на slave, і не ўзнікае сітуацыі расходимости і некарэктнасьці дадзеных.
рэплікацыя MySQL усталёўваецца ў некалькі этапаў.
- Адміністратар сістэмы павінен пераканацца, што на ўсіх яго машынах ўстаноўлена апошняя версія MySQL.
- Неабходна стварыць новага карыстальніка на галоўным сэрвэры, пад лагінам якога будзе адбывацца рэплікацыя MySQL (ён павінен мець ўзровень прывілеі FILE і права звязвацца са slave-машынамі).
- Далей трэба спыніць MySQL на галоўнакамандуючы і падпарадкаваных серверах і скапіяваць ўсе дадзеныя, якія адносяцца да рэплікацыі. На Unix-сістэмах гэта можна зрабіць з дапамогай каманды tar, якая робіць рэзервовы архіў новых фотак. Карыстальнікам Windows падыдзе WinZip.
- У секцыю mysqld дадаць наступныя радкі: server-id = unique number, log-bin. Ўсе змены праводзяцца ў файле My.conf на master сэрвэры, пасля чаго ён павінен быць абавязкова перагружаны.
- На slave-машынах у аналагічны файл трэба дапісаць наступны фрагмент кода:
master-host = <імя Вашага master хаста>
master-user = <лагін карыстальніка>
master-password = <сакрэтны пароль карыстальніка>
master-port = <порт, па якім будуць падлучацца падначаленыя сервера да галоўнага>
server-id =
* У трохкутных дужках трэба ўводзіць свае дадзеныя, а не вышэйзгаданы тэкст.
У канцы скапіруйце ўсе базы дадзеных на падначаленыя сервера і перазапусціце ўсе машыны.
Пасля такіх дзеянняў рэплікацыю можна лічыць усталяванай і наладжанай, а гэта значыць, што зараз ваш галоўны сервер не будзе пакутаваць ад высокай загрузкі і ў выпадку збою якой-небудзь табліцы на ім яе з лёгкасцю можна будзе аднавіць з іншага кампутара. У выніку можна на некалькі гадоў забыцца пра куплю новага апаратнага забеспячэння для высоконагруженных сістэм і здавольвацца наладжанай працай існуючай тэхнікі.
Similar articles
Trending Now