Այսօր MySQL- ը փոքր և միջին տվյալների շտեմարանի կառավարման համակարգերի շրջանում ամենատարածված լուծումներից մեկն է: MySQL- ի առավելություններից մեկը տարբեր տեսակի սեղանների հետ աշխատելու հնարավորությունն է: Դրանցից մեկը MyISAM- ն է: Նման աղյուսակները հիանալի են հաճախ պահանջվող տվյալները պահելու համար, բայց եթե դրանք փոփոխման գործընթացում ձախողվեն, դրանք կարող են հեշտությամբ վնասվել: Հետեւաբար, հաճախ լինում են դեպքեր, երբ անհրաժեշտ է վերականգնել MyISAM տեսակի աղյուսակը:
Անհրաժեշտ է
- - արմատային հավատարմագրերը նպատակային մեքենայի վրա;
- - տեղադրված MySQL սերվերի կառավարման կոմունալ ծառայությունների փաթեթ:
Հրահանգներ
Քայլ 1
Սկսեք գործնական MySQL սերվեր ունեցող մեքենայի վրա աշխատող բազայի, որի ենթադրյալ կոռումպացված աղյուսակներ ունեն աշխատող մեքենայի վրա արմատային օգտագործողի հավատարմագրերի հետ կապված նստաշրջան: Եթե դուք կարող եք աշխատել ուղղակիորեն նպատակային համակարգչի հետ, մուտք գործեք տեքստային մխիթարիչ կամ գործարկեք տերմինալային էմուլյատորը որպես արմատ: Եթե ունեք հեռավոր SSH մուտք, կապն իրականացնելու համար օգտագործեք հաճախորդի համապատասխան ծրագիր:
Քայլ 2
Կանգնեցրեք MySQL տվյալների բազայի սերվերը նպատակային մեքենայի վրա: Գործարկել ծառայության mysqld դադարեցման հրամանը: Սպասեք անջատման գործընթացի ավարտին (սա ցույց կտա ախտորոշիչ հաղորդագրությունը):
Քայլ 3
Ստեղծեք տվյալների շտեմարանի աղյուսակի ֆայլերի պահուստային պատճեն, որոնք կօգտագործվեն հետագա աշխատանքի համար: Այս դեպքում հարմար է օգտագործել ֆայլերի կառավարիչը: Անցեք դեպի սեղանի ֆայլերը պարունակող պանակ: Այն ունի տվյալների բազայի անվանման նույնական անուն և գտնվում է db գրացուցակում, որը գտնվում է սերվերի արմատային գրացուցակում (հասցեագրված է my.cnf կազմաձևման ֆայլի chroot փոփոխականով): Պատճենեք բոլոր ֆայլերը MYD և MYI ընդարձակումներով ընթացիկ թղթապանակից որոշ ժամանակավոր գրացուցակում:
Քայլ 4
Ստուգեք տվյալների շտեմարանի մեկ կամ մի քանի աղյուսակներ ՝ վնասների առկայության համար: Ընթացիկ գրացուցակում գործարկեք myisamchk հրամանը -c տարբերակով (կամ ընդհանրապես առանց ընտրանքների) նորմալ սկանավորման համար: Carefulգուշորեն փորձարկման համար օգտագործեք -m տարբերակը, և լրացուցիչ զգույշ փորձարկման համար `-e տարբերակը: Որպես վերջին պարամետր, նշեք մշակման ենթակա ֆայլերի անունների անունը կամ դիմակը: Օրինակ ՝ myisamchk -c test_table. MYImyisamchk *. MYI
Քայլ 5
Վերականգնել աղյուսակը կամ սեղանները, որտեղ հայտնաբերվել է վնասը: Գործարկեք myisamchk հրամանը նորմալ վերականգնման համար –r կամ նուրբ վերականգնման –o տարբերակով: Որպես վերջին պարամետր, ինչպես նախորդ քայլում, անցեք նպատակային աղյուսակների անուն կամ անվան դիմակ: Օրինակ ՝ myisamchk -o test_table. MYI
Քայլ 6
Սկսեք MySQL սերվերը: Գործարկել ծառայության mysqld մեկնարկի հրամանը:
Քայլ 7
Ավարտեք ձեր նիստը: Մուտքագրեք հրամանի ելքը և սեղմեք Enter: