ฐานข้อมูล MySQL เสียบางส่วน (บางส่วนใช้งานได้ปกติหลังกู้มาได้)

เหตุคือไฟดับ เปิดเครื่องขึ้นมาแล้ว MySQL รันไม่ขึ้นเลยครับ ไล่แก้ Error ไปเรื่อยๆ จนสุดท้ายไม่รู้จะทำยังไง ก๊อบโฟลเดอร์ data เก็บไว้ แล้วลบ MySQL ทิ้ง ติดตั้งใหม่ เอาโฟลเดอร์ data เดิมไปวางทับ ลองดูบางฐานข้อมูลใช้งานได้ปกติ แต่บางฐานข้อมูลก็ก็ขึ้นมาแต่ชื่อตาราง กดเข้าไปไม่ได้ครับ

ไม่ทราบว่าท่านใดเคยกู้กลับมาได้ 100% หรือเปล่าครับ? หรือว่าต้องรันอะไรเพิ่มเติม

ขอบคุณทุกคำตอบครับ:875328cc:

เก็บเป็น Innodb หรือ MyIsam ครับ

ลอง repair ดูยังครับ

[COLOR=#333333]Innodb ครับผม

[/COLOR]

ส่งคำสั่ง mysqld –standalone –console –innodb-force-recovery=4 แล้ว ไม่มีผลอะไรเลยครับ

step ที่ถูกต้องของการทำ innodb-force-recovery

  1. copy mysql directory ไปไว้ที่ปลอดภัยก่อน
  2. recovery โดยการไล่ level ขึ้นไป จาก 1-6
  3. สังเกต error ที่ออกมา มันจะบอกว่า db ไหนยังเป็นปัญหา จดเอาไว้ด้วย
  4. ณ​ level ที่กู้ได้ คือ สามารถ start mysql ได้โดยไม่มี errro ก็ให้ dump db ที่มีปัญหาออกมา เพื่อ backup เสร็จแล้วก็ drop db นั้นทิ้ง
  5. เมื่อได้ dump ของทุกอันแล้ว รวมทั้ง drop db ที่มีปัญหาทิ้งหมดแล้ว…
  6. stop mysql แล้ว start mysql ใหม่ใน mode ปกติ (recovery level = 0) แล้วก็ restore dump db ทั้งหมดกลับเข้าไป

โดยปกติ จะกู้ได้นะครับ ถ้าไม่ได้เขียนทับไปทับมา

หมายเหตุ - ระหว่าง recovery จะไม่สามารถเขียนลง db ได้