آرٽيڪل ڊاريڪٽري
MySQL ٽيبل جي غلطي کي ڪريش ٿيل ۽ آخري (خودڪار؟) طور نشان لڳايو ويو آهي - حل.
هي آرٽيڪل توهان کي اسان جي صلاحن سان متعارف ڪرايو ويندو جڏهن ٽيبل جي مرمت ڪريو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/ ) تي شيئر ڪيل مضمون "MySQL ٽيبل جي غلطي جو حل 'ڪريش ٿيل ۽ آخري (خودڪار؟)' مرمت طور نشان لڳايو ويو آهي" توهان لاءِ مددگار ثابت ٿيندو.
هن مضمون جي لنڪ شيئر ڪرڻ لاءِ آزاد محسوس ڪريو: https://www.chenweiliang.com/cwl-176.html
