MySQL – құрылымдық деректерді басқару және сақтау үшін кеңінен қолданылатын ашық бастапқы дерекқорды басқару жүйесі. Нақты уақыттағы деректерді синхрондау үшін негізгі талап оны нақты уақыт режимінде деректерді синхрондауды қамтамасыз ететін журнал негізінде жүзеге асыру болып табылады. Бұл дерекқорды жобалауға және енгізуге ешқандай қосымша шектеулер қоймайды.
MySQL өзінің қарапайымдылығымен, пайдаланудың қарапайымдылығымен және ауқымдылығымен танымал, бұл оны шағын веб-сайттардан ірі кәсіпорындарға дейін әртүрлі қолданбалар үшін танымал таңдау жасайды.
MySQL синхронды белсенді-белсенді репликациясының мақсаты үздіксіз қол жетімділікті және ақауларға төзімділікті қамтамасыз ету болып табылады.
Мұнда MySQL белсенді-белсенді синхронды репликацияға қол жеткізудің 4 әдісі берілген.
Кірістірілген MySQL дерекқорын репликациялау мүмкіндігіне негізделген негізгі-мастер репликациясы.
Бұл әдіс әдетте шағын және орташа өлшемді орналастырулар үшін қолайлы.
Бұл архитектурада екі түйін қарапайым қос-мастер режиміне кіріп, арнайы қосылымды пайдалана алады. Егер master_A сәтсіз болса, қолданба қосылымдары master_B жүйесіне жылдам ауыстыра алады және керісінше.
Екі түйін қарама-қайшы деректерді жазатын бөлінген ми сценарийлерін болдырмау үшін екі түйінде auto_increment_increment және auto_increment_offset үшін әртүрлі мәндерді орнату маңызды. Себебі, егер басты түйін күтпеген жерден сәтсіз болса немесе қолжетімсіз болса, кейбір бинлог оқиғалары бағынышты түйінге қайталанбау мүмкіндігі бар.
Мұндай жағдайларда бағынышты құрылғыдағы жасалған автоинкремент мәні мен негізгі құрылғыдағы бастапқы мән арасында қайшылықтар болуы мүмкін. Дегенмен, негізгі және бағыныңқы арасындағы автоматты ұлғайту идентификаторы қайшылықтарын шешуге арналған сәйкес қателік қауіпсіз механизм болса, бұл әдісті пайдаланудан аулақ бола аласыз.
MySQL 5.7+ жаңартылған нұсқаларында көп ағынды репликацияны пайдалану репликацияның кешігуін айтарлықтай азайтады. Бұған қоса, репликация кідірісіне ерекше сезімтал басқа балама шешім іс жүзінде кешігуді қамтамасыз етпейтін жартылай синхронды репликация болып табылады. Дегенмен, бұл, әсіресе екі бағытты жазулармен қатарлас транзакциялар үшін өнімділіктің төмендеуіне әкелуі мүмкін. Шешім қабылдау үшін жан-жақты бағалау қажет.
Galera репликация шешімі
Galera - Codership ұсынған көп негізгі деректерді синхрондау репликациялау механизмі. Ол деректердің синхронды репликациясын, сонымен қатар бірнеше түйіндер бойынша оқу және жазу операцияларын қамтамасыз етеді, дерекқордағы жоғары қолжетімділік пен деректердің сәйкестігін қамтамасыз етеді. Galera негізіндегі жоғары қолжетімділік шешімдері MariaDB Galera Cluster және Percona XtraDB Cluster (PXC) болып табылады.
PXC бұл күндері жиірек пайдаланылады және деректердің берік үйлесімділігін қамтамасыз етеді, бұл оны әсіресе электрондық коммерция үшін қолайлы етеді. Дегенмен, PXC-нің де шектеулері бар. Бір мезгілде транзакциялардың үлкен көлемі бар сценарийлерде желі кідірісін азайту үшін InfiniBand желісін пайдалану ұсынылады. Себебі, PXC жазуды күшейту және кедергі әсерлерінен зардап шегуі мүмкін, бұл параллельді тиімділіктің айтарлықтай жоғалуына әкеледі.
Жартылай синхронды репликация сияқты, Galera репликациясы әдетте үш түйінмен шектеледі. Бұған қоса, желілік діріл өнімділік пен тұрақтылық мәселелерін тудыруы мүмкін.
Топтық репликация шешімі
MGR (MySQL Group Replication) – MySQL ресми түрде енгізілген қолжетімділігі жоғары шешім. Ол Paxos протоколы арқылы дерекқор кластері түйіндері арасында күшті деректер сәйкестігін қамтамасыз етеді. MGR патенттік репликация технологиясына негізделген және плагин ретінде ұсынылады. Бұл кластердегі барлық түйіндердің жазылу мүмкіндігін береді, бір кластердің өнімділік шектеулерін жояды, желілік бөлімдерден туындаған бөлінетін ми мәселесін шешеді және қайталанатын деректердің сенімділігін арттырады.
Дегенмен, шындық біршама қатал. Қазіргі уақытта MGR-ті ерте қолданушылар көп емес. Оған қоса, ол тек InnoDB кестелеріне қолдау көрсетеді және жазбалар жиынының қайшылықтарын анықтау үшін әрбір кестеде бастапқы кілт болуын талап етеді. GTID мүмкіндігін қосу керек және екілік журнал пішімін көшбасшы сайлауы мен жазбалар орнату үшін ROW күйіне орнату керек.
COMMIT суретті оқшаулау деңгейінің сәтсіздігі сценарийлеріне ұқсас сәтсіздікке әкелуі мүмкін. Қазіргі уақытта MGR (MySQL Group Replication) кластері ең көбі 9 түйінді қолдайды. Ол сыртқы кілттерге немесе сақтау нүктесі функцияларына қолдау көрсетпейді, бұл жаһандық шектеулерді тексеруге және ішінара кері қайтаруға жол бермейді. Екілік журнал бинлог оқиғаларының бақылау қосындысын қолдамайды.
Канал негізіндегі шешім
Нақты уақыттағы дерекқорды синхрондау үшін Alibaba-да синхронды таратылған дерекқор репликациясын қамтамасыз ететін Otter деп аталатын арнайы ашық бастапқы жоба бар. Otter-тің негізгі идеясы әлі де нақты уақыттағы синхронды репликацияға қол жеткізу үшін қосымша дерекқор деректер журналдарын жинауға негізделген. Otter өзі қосымша дерекқорды синхрондау журналының ақпаратын жинауға бағытталған Canal деп аталатын басқа ашық бастапқы жобаға сүйенеді.
Otter қазіргі уақытта MySQL дерекқорлары арасында синхронды репликацияға қол жеткізуге бағытталған. Ол екі MySQL дерекқоры арасында екі бағытты синхронды репликацияға қол жеткізу үшін ұқсас технологияларды пайдаланады. Мұндағы қос бағыттылық деректерді А-дан В-ға немесе В-дан А-ға синхрондауға болатындығын білдіреді, бірақ белгілі бір уақытта ол бір бағытты болуы мүмкін екенін ескеру маңызды.
Мастер-құлдың репликация процесін үш кезеңге бөлуге болады:
1. Шебер екілік журналға өзгерістерді жазады, олар екілік журнал оқиғалары деп аталады. Бұл оқиғаларды "binlog оқиғаларын көрсету" пәрмені арқылы көруге болады.
2. Бағыттаушы екілік журнал оқиғаларын негізгіден өзінің релелік журналына көшіреді.
3. Магистрдің өзгертулерін өз деректеріне қолдану үшін бағындыру реле журналында жазылған оқиғаларды дәйекті түрде қайталайды.
Канал принципіне келетін болсақ, ол салыстырмалы түрде қарапайым:
1. Canal MySQL бағындысы ретінде маскарадтау және MySQL шеберіне демп сұрауын жіберу арқылы MySQL тәуелді байланыс протоколына еліктейді.
2. Дамп сұрауын алғаннан кейін MySQL негізгі сервері екілік журналдарды құлға (ол Канал) жібере бастайды.
3. Содан кейін арна тиісті ақпаратты шығару үшін екілік журнал нысандарын (бастапқыда байт ағыны пішімінде) талдайды.
Vinchin Backup & Recovery көмегімен MySQL дерекқорларының сақтық көшірмесін жасаңыз
Деректерді жақсырақ қорғау үшін дерекқорлардың сақтық көшірмесін жасау ұсынылады. Vinchin Backup & Recovery виртуалды машиналарда да, физикалық серверлерде де дерекқорларды қорғау үшін қуатты мүмкіндіктерді қамтамасыз етеді. VM деңгейіндегі сақтық көшірмемен жақсы жұмыс істей отырып, виртуалды орталардың пайдаланушылары өздерінің негізгі бизнес деректері мен ақпараттық жүйелері үшін екі есе сақтандыру алады.
Vinchin Backup & Recovery қуатты дерекқордың сақтық көшірмесін жасау және қалпына келтіру мүмкіндіктері бар физикалық және виртуалды машиналарда орнатылған Oracle DB, MySQL, SQL Server, PostgreSQL, Postgres Pro және MariaDB қорғауды қолдайды. Ол сондай-ақ толық сақтық көшірмені, дифференциалды сақтық көшірмені, қосымша сақтық көшірмені және транзакция журналының сақтық көшірме жасау стратегияларын қамтамасыз етеді, бұл сізге сұраныс бойынша сақтық көшірме жасау жоспарын теңшеуге мүмкіндік береді.
Vinchin Backup & Recovery дерекқорлардың қалыпты жұмысына әсер етпей, тиімді сақтық көшірме жасауды қолдайды, сонымен қатар пайдаланушы дерекқордың сақтық көшірмесін жасау жұмысын оңай жасауға мүмкіндік береді.
![]() |
Назар аударыңыз! Бұл мақала ресми құжат емес.Ақпаратты сақтықпен және сынақ ортасында пайдалану керек.
Заманауи сақтық көшірме жасау, репликациялау, деректерді синхрондау және төлемдік бағдарламадан қорғау жүйелерін құру туралы сұрақтарыңыз болса, қазіргі заманғы деректердің сақтық көшірмесін жасау және қалпына келтіру технологиялары бойынша кеңес алу үшін біздің компанияға хабарласыңыз . Біздің компанияның осы салада 20 жылдан астам тәжірибесі бар. |
Ең жақсы он Vinchin тәжірибесі (KZ)
- AWS EC2 даналарының сақтық көшірмесін жасаудың 4 жолы
- Қосымша oVirt сақтық көшірмесін қалай жасауға болады
- Hyper-V жүктеме балансы дегеніміз не және оны қалай конфигурациялауға болады
- XCP-ng апатты қалпына келтіруді қалай орындау керек
- Виртуалды машиналарды VMware-ден XCP-ng-ге қалай көшіруге болады
- XenConvert дегеніміз не және қандай балама нұсқалар бар?
- Sangfor HCI және VMware: жан-жақты салыстыру
- Жоғары қолжетімділік және апатты қалпына келтіру. Оны анықтап көрейік
- OVA файлы және OVF файлы дегеніміз не. Виртуалды машина үлгілері
- Виртуалды машинаны Proxmox-тан XCP-ng-ге қалай көшіруге болады