Կրկնօրինակման մոնիտորինգը կարմրում է, երբ VPN-ն ընկնում է, և բնազդը դիրքը վերականգնելն է։ Հենց այդ բնազդն է ցանցային ընդհատումը դարձնում տվյալների խնդիր։ Ընկած ուղին ոչինչ չի ասում այն մասին, թե ինչ է կրկնօրինակը ստացել կամ կիրառել, և դրանք երկու վիճակ ունեցող երկու փուլեր են։ Կարդացեք դրանք առանձին, նախքան որևէ բան փոխելը։

Երկու փուլ, երկու առանձին պատասխան

Սովորական ասինխրոն կրկնօրինակը երկու աշխատանք է կատարում։ Ստացողը միանում է աղբյուրին, քաշում է իրադարձությունները և դրանք տեղականորեն գրում փոխանցման մատյանում։ Կիրառողը կարդում է այդ մատյանը և իրադարձությունները կատարում կրկնօրինակի վրա։ Երբ ուղին կտրվում է, ստացողն անմիջապես կանգ է առնում, մինչդեռ կիրառողը շարունակում է աշխատել սկավառակի վրա արդեն եղած հետընթացի վրա։ Այսպիսով՝ մեկ ընդհատում ստեղծում է երկու տարբեր հարց՝ վերադարձա՞ծ է կապը, և կիրառվա՞ծ է կուտակված աշխատանքը։ Դրանք մեկ հարցի պես դիտարկելը երկու վիճակ միջինացնում է մոլորեցնող պատասխանի մեջ։

Ստացողի վերականգնումը ասում է, որ ուղին աշխատում է։ Այն ոչինչ չի ասում այն մասին, թե որքան է հետ մնացել կիրառողը, կամ արդյոք այն սխալի է հանդիպել անջատված ժամանակ։

Կարդացեք ալիքը ճիշտ հրահանգով

MySQL 8.4-ում SHOW REPLICA STATUS վերադարձնում է մեկ տող յուրաքանչյուր կարգավորված ալիքի համար, ուստի կարդացեք ձեր նկատի ունեցած ալիքի տողը, ոչ թե ցանկի առաջինը։ Replica_IO_Running տարբերում է միացած ստացողին միացող կամ կանգնածից, իսկ Replica_SQL_Running նկարագրում է կիրառողին։ Կարդացեք նաև դրանց կողքի սխալի սյուները, որովհետև նորից միացող և անմիջապես ձախողվող ստացողը թողնում է հաղորդագրություն, որը ոչ մի կարգավիճակի դրոշ չի ցուցադրի։ Ավելի հին թողարկումները օգտագործում են այլ սյունակների անուններ, ուստի մի թարգմանեք հին բաղադրատոմսը՝ պարզապես վերանվանելով հրահանգները։

Ստուգեք նաև աղբյուրի ինքնությունը և ցանկացած կարգավորված զտիչ։ Սխալ աղբյուրին ուղղված կամ ձեր կարծիքից ավելի նեղ զտված կրկնօրինակը հաղորդում է առողջություն, մինչդեռ կրկնօրինակում է ձեր սպասածից տարբերվող բան։

Ինչու զրո ուշացման թիվը կարող է ստել

Ուշացման արժեքը համեմատում է վերջին կիրառված իրադարձության ժամանակադրոշմը ներկա ժամի հետ։ Երբ ստացողը մեկ ժամ կանգնած է եղել, կիրառողը կարող է մշակել հետընթացը և հասնել ստացածի վերջին, և այդ ժամանակ թիվը ընկնում է զրոյի, թեև կրկնօրինակը մեկ ժամ հետ է աղբյուրից։ Չափանիշը չափում է կիրառողի հերթը, ոչ թե կրկնօրինակի արդիականությունը։

Փոխարենը համեմատեք կատարված գործարքները աղբյուրի մատչելիի հետ։ Այդ համեմատությունը դիմանում է կանգնած ստացողին։

Իրական վերականգնման պատուհանը որոշում է պահպանումը

Հասնելու համար պահանջվում է, որ աղբյուրը դեռ պահի կրկնօրինակին անհրաժեշտ գործարքները։ Երբ դրանք մաքրվեն, կրկնօրինակը չի կարող դրանք բերել, և ոչ մի քանակի վերամիացում դա չի փոխի։

GTID ինքնադիրքավորմամբ ձախողումը բացահայտ է. կրկնօրինակը պահանջում է պատմություն, որը աղբյուրը այլևս չի պահում, և հրաժարվում է շարունակել։ Այն ժամանակ տարբերակներն են՝ բացակայող իրադարձությունները ստանալ այն աղբյուրից, որը դեռ ունի դրանք, կամ վերակառուցել պահուստից և թույլ տալ, որ հասնի։ Բացը բաց թողնելը հասնել չէ, և այն թողնում է կրկնօրինակ, որի տվյալները լուռ թերի են։ Պլանավորեք պատուհանը՝ համեմատելով սպասվող ընդհատման տևողությունը աղբյուրի վրա երկուական մատյանի պահպանման և փոփոխության արագության հետ, որովհետև այդ երեք թվերն են որոշում՝ ընդհատումն ընդհանրապես վերականգնելի է, թե ոչ։

Ստուգեք հասնելը, ոչ թե ցուցիչի գույնը

Վերականգնեք ուղին՝ ներառյալ անվանալուծումը և տրանսպորտի անվտանգությունը, ապա դիտեք՝ արդյոք գոյություն ունեցող ալիքը նորից միանում է իր սեփական քաղաքականությամբ։ Տվեք նրան որոշակի միջակայք մինչև միջամտելը, և գրանցեք ստացման ու կիրառման առաջընթացը այդ միջակայքի երկու ծայրերում։ Վերագործարկվող ալիքը և արդի ալիքը տարբեր հայտնաբերումներ են։

Հաստատեք, որ կիրառողը հասել է աղբյուրի ընթացիկ դիրքին, ոչ միայն հին հետընթացի վերջին։ Ստուգեք, որ կիրառողում սխալ չի սպասում, որովհետև մեկ ձախողված իրադարձություն կանգնեցնում է առաջընթացը, մինչդեռ ստացողը շարունակում է հաղորդել միացվածության մասին։ Ապա գրանցեք ապացույցները՝ ալիքի անունը, երկու փուլերի վիճակները, կատարված դիրքը և ժամը։ Կանաչ ցուցիչը պնդում է. դիրքը փաստ է։

Առնչվող հոդվածներ