Нийтлэлийн лавлах
MySQLd өгөгдлийн хуудасны алдааг эвдэрсэн гэж тэмдэглэсэн бөгөөд сүүлчийн (автомат?) давтair шийдэл
Энэ нийтлэл нь ширээ засахдаа бидний зөвлөмжийг танд танилцуулах болноError: Table \'./db_name/table_name\' is marked as crashed and last (automatic?) repair failed
шийдэл.
MySQLМэдээллийн хуудсанд асуудал гарлаа, сануулга ▼
Error: Table './db_name/table_name' is marked as crashed and last (automatic?) repair failed
mysql_upgrade нь хүснэгтүүдийг шалгах, засах, системийн хүснэгтүүдийг шинэчлэхийн тулд дараах тушаалуудыг гүйцэтгэдэг ▼
mysqlcheck --all-databases --check-upgrade --auto-repair
- Үйл ажиллагааны бүтэлгүйтэл нь эргэлт буцалтгүй бөгөөд мэдээллийн санг зогсоох шаардлагатай.
service monit stop
service mysqld stop
- Өгөгдлийн сан байрладаг лавлахыг оруулна уу:
cd /var/lib/mysql/db_name/
Жич: Үйлдлийг засахаас өмнө mysql үйлчилгээг зогсоох шаардлагатай.
- Нэг мэдээллийн хуудсыг засах:
myisamchk -r tablename.MYI
- Бүх мэдээллийн хуудсыг засах:
myisamchk -r *.MYI
- Аюулгүйн горим:
myisamchk -r -v -o <table_name>
- Хүчлэх горим:
myisamchk -r -v -f <table_name>
myisamchk хэрэглээ
Тайлбар: Myisamchk-г ашиглахын өмнө mysqld шалгах хүснэгтэд хандахгүй байгаа эсэхийг шалгаарай.Mysqld-г зогсоосон нь дээр.
- хэрэгжүүлсэн
myisamchk –update-state -s *.myi
, мөн аль индекс файлд асуудал байгаа эсэхийг шалгана уу (удаан байж магадгүй).
- Update-state сонголт нь зөвхөн mysqld-г зогсоох үед ашиглагддаг. -s хүснэгтийн жагсаалтын зарим ердийн мэдээллийг үл тоомсорлож, зөвхөн алдааг жагсаах гэсэн үг юм.
- Гэмтсэн хүснэгт бүрийн хувьд оролдоно уу
myisamchk -r -q table_name
Энэ бол индексийн хүснэгт болон өгөгдлийн хүснэгт хоорондоо нийцэж байгаа эсэхийг автоматаар шалгах хурдан засварын горим юм.Хэрэв энэ нь тогтвортой байвал үүнийг засах боломжтой.
- Хэрэв хурдан засах горим амжилтгүй болбол:
myisamchk -r table_name
Тохиромжгүй өгөгдөл, индексүүдийг устгаж, индексүүдийг дахин бүтээдэг.
- Хэрэв энэ нь амжилтгүй болбол:
myisamchk –safe-recover table_name
Үйлдлийн жишээ
Үйл ажиллагааны бүтэлгүйтэл нь эргэлт буцалтгүй бөгөөд мэдээллийн санг зогсоох шаардлагатай.
service monit stop
service mysqld stop
cd /var/lib/mysql/eloha_ufo
cd /var/lib/mysql/eloha_cwl
Бүх мэдээллийн хуудсыг засах:
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
Энэ нь -r-ээс хамаагүй удаан боловч -r-ийн боломжгүй нөхцөл байдлыг зохицуулдаг.
myisamchk -r -f -o /var/lib/mysql/eloha_ufo/wp_postmeta.MYI
Өгөгдлийн сангийн хүснэгтийн бүрэн замыг зааж өгөх тушаал энд байна:
myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_postmeta.MYI
myisamchk -r -f /var/lib/mysql/eloha_ufo/wp_posts.MYI
MYSQLD мэдээллийн санг эхлүүлэх:
service mysqld start
service mysqld restart
эхлүүлэхMONIT Monitor:
service monit restart
service monit start
Hope Chen Weiliang блог ( https://www.chenweiliang.com/ ) хуваалцсан "mysqld өгөгдлийн хүснэгтийн алдаа нь эвдэрсэн, сүүлчийн (автомат?) засварын шийдэл" гэж тэмдэглэсэн нь танд тустай.
Энэ нийтлэлийн холбоосыг хуваалцахад тавтай морилно уу:https://www.chenweiliang.com/cwl-176.html
Чен Вэйляны блогын Telegram сувагт тавтай морил, хамгийн сүүлийн үеийн мэдээг аваарай!
📚 Энэхүү гарын авлага нь асар их үнэ цэнийг агуулсан, 🌟Энэ бол ховор боломж, бүү алдаарай! ⏰⌛💨
Хэрэв танд таалагдвал лайк дарж, хуваалцаарай!
Таны хуваалцах, дуртай зүйл бол бидний байнгын урам зориг юм!