วิธีซ่อมแซมตารางที่ทำเครื่องหมายว่าไม่ถูกต้องหรือเสียหายใน MySQL

เป็นเวลากว่าหนึ่งปีที่เราใช้ปลั๊กอิน Counterizer สำหรับ WordPress และเก็บสถิติของบล็อกและผู้อ่านปลั๊กอินนี้เราได้ปิดใช้งานเมื่อไม่กี่วันที่ผ่านมานับตั้งแต่ (เหนือสิ่งอื่นใด) ซึ่งบันทึกข้อมูลได้มากกว่า 600MB ในฐานข้อมูล

มันเกิดขึ้นที่ (ก่อนปิดใช้งานปลั๊กอินและทำความสะอาดฐานข้อมูล) ฉันพยายามที่จะถ่ายโอนข้อมูลของฐานข้อมูลนั่นคือส่งออกไปยัง. SQL จากนั้นดาวน์โหลดและข้อผิดพลาดต่อไปนี้ปรากฏในเทอร์มินัลโฮสติ้ง

mysqldump: มีข้อผิดพลาด: 144: ตาราง './dl_database/Counterize_Referers' ถูกทำเครื่องหมายว่าล้มเหลวและการซ่อมแซมครั้งสุดท้าย (อัตโนมัติ?) ล้มเหลวเมื่อใช้ LOCK TABLES

ดังนั้นจึงไม่มีการทิ้งขยะและก็... แค่ความคิดที่ว่า DesdeLinux DB มีปัญหาก็ทำให้ผมของผมยืนหยัดได้ 

การค้นคว้าข้อมูลเล็กน้อยบนเว็บฉันสามารถเรียนรู้วิธีแก้ปัญหานี้ได้เห็นได้ชัดว่าฐานข้อมูลไม่ได้มีปัญหาอย่างแน่นอนเพียงแค่ตารางถูกทำเครื่องหมายว่า 'มีปัญหา' โชคดีที่วิธีนี้แก้ไขได้ง่ายมาก

ก่อนอื่นมาเข้าถึงเซิร์ฟเวอร์ MySQL:

mysql -u root -p

เรากด [Enter] และมันจะถามรหัสผ่านรูท MySQL เราใส่แล้วกด [Enter] อีกครั้ง

คำสั่งนี้ใช้ในกรณีที่ติดตั้งเซิร์ฟเวอร์ MySQL บนคอมพิวเตอร์เครื่องเดียวกันหากคุณต้องการเชื่อมต่อจากระยะไกลไปยังเซิร์ฟเวอร์ MySQL อื่นคุณต้องเพิ่มสิ่งต่อไปนี้ในบรรทัด: -h IP-OF-SERVER

เมื่ออยู่ใน MySQL เราจะบอกคุณว่าจะใช้ฐานข้อมูลใดตัวอย่างเช่นปัญหาตามข้อผิดพลาดด้านบนอยู่ในตาราง Counterize_ผู้อ้างอิง จากฐานข้อมูล  ฐานข้อมูล dl_, ดังนั้น:

use database dl_database;

และตอนนี้การซ่อมแซมฐานโต๊ะ:

repair table Counterize_Referers;

สังเกตว่าท้ายบรรทัดเหล่านี้จะมีอัฒภาค —– »  ;

เมื่อคำสั่งก่อนหน้านี้ถูกดำเนินการ ทุกอย่างควรจะกลับมาเป็นปกติ อย่างน้อยในกรณีของฉัน มันเป็นเช่นนี้มากกว่าหนึ่งครั้ง 

จากนั้นจะดำเนินการตามคำสั่งอีกครั้งเพื่อถ่ายโอนข้อมูลฐานข้อมูลและ voila เท่านั้นไม่มีอะไรเพิ่มเติม

อย่างไรก็ตาม ฉันทำสิ่งนี้มากกว่าสิ่งอื่นใดเพื่อเป็นบันทึกความทรงจำ เนื่องจากสิ่งเดียวกันนี้ได้เกิดขึ้นกับฉันมาแล้วสองครั้ง และฉันไม่อยากลืมคำแนะนำในกอบกู้โลก 

ทักทายและหวังว่าจะเป็นประโยชน์กับคนอื่น


เพิ่มเป็นแหล่งข้อมูลที่ต้องการใน Google