Maqolalar katalogi
MySQL jadvalidagi xatolik ishdan chiqqan va oxirgi (avtomatik?) deb belgilangan - yechim.
Ushbu maqola sizni stolni ta'mirlashda maslahatlarimiz bilan tanishtiradiError: Table \'./db_name/table_name\' is marked as crashed and last (automatic?) repair failedyechim.
Quyidagi xabarda ko'rsatilganidek, MySQL jadvali bilan bog'liq muammo mavjud: ▼
Error: Table './db_name/table_name' is marked as crashed and last (automatic?) repair failed
mysql_upgrade jadvallarni tekshirish va tuzatish hamda tizim jadvallarini yangilash uchun quyidagi buyruqlarni bajaradi ▼
mysqlcheck --all-databases --check-upgrade --auto-repair
- Operatsiyaning muvaffaqiyatsizligi qaytarilmas va ma'lumotlar bazasi to'xtatilishi kerak:
service monit stop
service mysqld stop
- Ma'lumotlar bazasi joylashgan katalogni kiriting:
cd /var/lib/mysql/db_name/
Eslatma: MySQL xizmati operatsiyani tuzatishdan oldin to'xtatilishi kerak.
- Yagona ma'lumotlar varag'ini ta'mirlash:
myisamchk -r tablename.MYI
- Barcha ma'lumotlar jadvallarini tuzatish:
myisamchk -r *.MYI
- Xavfsiz rejim:
myisamchk -r -v -o <table_name>
- Majburlash rejimi:
myisamchk -r -v -f <table_name>
myisamchk foydalanish
Eslatma: myisamchk dan foydalanishdan oldin mysqld tekshiriladigan jadvalga kirmasligiga ishonch hosil qiling.Mysqld-ni to'xtatgan ma'qul.
- amalga oshirish
myisamchk –update-state -s *.myi
, va qaysi indeks fayllarida muammolar borligini tekshiring (uzoq vaqt talab qilishi mumkin).
- Update-state opsiyasi faqat mysqld-ni to'xtatganda ishlatiladi.
- Har bir buzilgan jadval uchun harakat qilib ko'ring
myisamchk -r -q table_name
Bu tez ta'mirlash rejimi bo'lib, indeks jadvali va ma'lumotlar jadvali mos kelishini avtomatik ravishda tekshiradi.Agar u izchil bo'lsa, uni tuzatish mumkin.
- Tezkor tuzatish rejimi bajarilmasa, quyidagilarni ko'rib chiqing:
myisamchk -r table_name
Mos kelmaydigan ma'lumotlar va indekslar o'chiriladi va indekslar qayta tiklanadi.
- Agar bu muvaffaqiyatsiz bo'lsa, quyidagilarni ko'rib chiqing:
myisamchk –safe-recover table_name
Operatsiyaga misol
Operatsiyaning muvaffaqiyatsizligi qaytarilmas va ma'lumotlar bazasi to'xtatilishi kerak:
service monit stop
service mysqld stop
cd /var/lib/mysql/eloha_ufo
cd /var/lib/mysql/eloha_cwl
Barcha ma'lumotlar jadvallarini tuzatish:
myisamchk -r *.MYI
myisamchk -r -v -f wp_postmeta.MYI
myisamchk -r -v -f wp_posts.MYI
myisamchk -r -v -f wp_options.MYI
myisamchk -r -v -f wp_itsec_log
Bu -r dan ancha sekinroq, lekin -r qila olmaydigan vaziyatlarni boshqaradi.
myisamchk -r -f -o /var/lib/mysql/eloha_ufo/wp_postmeta.MYI
Ma'lumotlar bazasi jadvaliga to'liq yo'l uchun buyruq:
myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_postmeta.MYI
myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_posts.MYI
MYSQLD ma'lumotlar bazasini ishga tushiring:
service mysqld start
service mysqld restart
MONIT monitoring dasturini ishga tushiring :
service monit restart
service monit start
Umid qilamizki, Chen Weiliangning blogida ( https://www.chenweiliang.com/ ) ulashilgan "MySQL jadval xatosining yechimi 'ishdan chiqqan va oxirgi (avtomatik?)' ta'mirlangan deb belgilangan" maqolasi siz uchun foydali bo'ladi.
Ushbu maqola havolasini ulashing: https://www.chenweiliang.com/cwl-176.html
