آرٽيڪل ڊاريڪٽري
هن MySQLddata جدول جي غلطي کي نشان لڳايو ويو آهي حادثو ۽ آخري (خودڪار؟) repaiحل
هي آرٽيڪل توهان کي اسان جي صلاحن سان متعارف ڪرايو ويندو جڏهن ٽيبل جي مرمت ڪريو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
، ۽ چيڪ ڪريو ته ڪھڙي انڊيڪس فائلن ۾ مسئلا آھن (شايد ڊگھو وقت وٺي سگھي ٿو).
- اپ ڊيٽ اسٽيٽ آپشن صرف استعمال ڪيو ويندو آهي جڏهن mysqld کي روڪيو وڃي.
- هر خراب ٿيل ٽيبل لاء، ڪوشش ڪريو
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 مانيٽر:
service monit restart
service monit start
اميد چن ويلانگ بلاگ ( https://www.chenweiliang.com/ ) "mysqld ڊيٽا جدول جي غلطي کي نشان لڳايو ويو آھي حادثو ۽ آخري (خودڪار؟) مرمت جو حل" توھان جي طرفان شيئر ڪيو ويو توھان لاءِ مددگار ثابت ٿيندو.
هن آرٽيڪل جي لنڪ کي حصيداري ڪرڻ لاء ڀليڪار:https://www.chenweiliang.com/cwl-176.html
