-
คุณสามารถกู้คืน MySQL จากไฟล์ใดได้บ้าง?
-
การกู้คืน MySQL จากไฟล์ .frm, .myd และ .myi ทำอย่างไร?
-
การกู้คืน MySQL จากไฟล์ .ibd ทำอย่างไร?
-
การกู้คืน MySQL จากไฟล์บันทึกและภาพสำรองทำอย่างไร?
-
การสำรองข้อมูลและการกู้คืน MySQL ด้วย Vinchin ทำอย่างไร?
-
คำถามที่พบบ่อยเกี่ยวกับการกู้คืนฐานข้อมูล MySQL
-
สรุป
การกู้คืนฐานข้อมูล MySQL จากไฟล์มีความสำคัญอย่างยิ่งต่อผู้ดูแลระบบฐานข้อมูล โดยเฉพาะเมื่อระบบล่ม ฐานข้อมูลเสียหาย หรือเกิดการปิดเครื่องโดยไม่คาดคิด การรู้วิธีกู้คืนฐานข้อมูล MySQL จากไฟล์ต่างๆ จะช่วยให้คุณสามารถกู้ข้อมูลที่มีค่ากลับมาได้อย่างรวดเร็วและปลอดภัย ในคู่มือนี้ เราจะมาดูกันว่าไฟล์ประเภทต่างๆ และขั้นตอนโดยละเอียดในการกู้คืนฐานข้อมูล MySQL อย่างมีประสิทธิภาพ โดยเน้นการลดความเสี่ยงให้น้อยที่สุด
คุณสามารถกู้คืน MySQL จากไฟล์ใดได้บ้าง?
ฐานข้อมูล MySQL ประกอบด้วยหลายไฟล์ โดยแต่ละไฟล์มีบทบาทเฉพาะในการจัดเก็บข้อมูล ไฟล์ต่อไปนี้มีความสำคัญต่อการกู้คืนฐานข้อมูล MySQL:
ไฟล์ .frm: มีคำจำกัดความของตาราง (สำหรับตาราง MyISAM)
ไฟล์ .myd: จัดเก็บข้อมูล (สำหรับตาราง MyISAM)
ไฟล์ .myi: จัดเก็บดัชนี (สำหรับตาราง MyISAM)
ไฟล์ .ibd: มีข้อมูลและดัชนีของตาราง (สำหรับตาราง InnoDB)
ไฟล์บันทึก: เปิดใช้งานการกู้คืนข้อมูล ณ เวลาใดเวลาหนึ่ง (บันทึกไบนารี)
นอกจากนี้ ยังสามารถใช้ภาพสำรองในการกู้คืนอินสแตนซ์ MySQL ทั้งหมดได้ โดยเฉพาะเมื่อเกิดการล่มของเซิร์ฟเวอร์หรือข้อมูลเสียหาย
การกู้คืน MySQL จากไฟล์ .frm, .myd และ .myi ทำอย่างไร?
สำหรับตาราง MyISAM ไฟล์ .frm, .myd และ .myi เป็นองค์ประกอบหลักที่ใช้ในการกู้คืน ซึ่งไฟล์เหล่านี้มีข้อมูลคำจำกัดความของตาราง ข้อมูล และดัชนี นี่คือวิธีการกู้คืนฐานข้อมูล:
ขั้นตอนการกู้คืน MySQL จากไฟล์ .frm, .myd และ .myi:
1. หยุด MySQL: ปิดบริการ MySQL ก่อนคัดลอกไฟล์เพื่อหลีกเลี่ยงความเสียหายของข้อมูล
2. คัดลอกไฟล์: คัดลอกไฟล์ .frm, .myd และ .myi ไปยังไดเรกทอรีข้อมูลของ MySQL
3. ตั้งค่าสิทธิ์การเข้าถึง: ตรวจสอบให้แน่ใจว่าไฟล์เป็นของผู้ใช้ MySQL ในระบบ Linux ให้ใช้คำสั่ง chown -R mysql:mysql /var/lib/mysql/ ส่วนใน Windows ให้ปรับแต่งคุณสมบัติโฟลเดอร์ผ่านแท็บ ความปลอดภัย
4. รีสตาร์ท MySQL: เริ่มบริการ MySQL และตรวจสอบว่าตารางได้รับการกู้คืนแล้วหรือไม่
หมายเหตุ: ใน MySQL 8.0 และรุ่นที่ใหม่กว่า พจนานุกรมข้อมูลจะถูกจัดเรียงลำดับและไม่ขึ้นอยู่กับไฟล์ .frm อีกต่อไป การเปลี่ยนแปลงนี้ทำให้วิธีการบางวิธีล้าสมัย ดังนั้นใน MySQL 8.0+ คุณต้องใช้วิธีการกู้คืนทางเลือก เช่น mysqlbackup
การกู้คืน MySQL จากไฟล์ .ibd ทำอย่างไร?
ไฟล์ .ibd ของ InnoDB เก็บข้อมูลและดัชนีของตาราง แต่การกู้คืนต้องทำตามขั้นตอนอย่างแม่นยำเนื่องจากธรรมชาติของการจัดการธุรกรรมของ InnoDB ด้านล่างนี้เป็นคำแนะนำแบบรวมสำหรับสถานการณ์การกู้คืนทั้งระดับพื้นฐานและขั้นสูง
ขั้นตอนการกู้คืน MySQL จากไฟล์ .ibd
1. หยุดบริการ MySQL ก่อนดำเนินการกับไฟล์ และตรวจสอบให้แน่ใจว่าไฟล์ .ibd สอดคล้องกับโครงสร้างของตารางเป้าหมาย
2. วางไฟล์ .ibd ไว้ในไดเรกทอรีข้อมูลของ MySQL
3. ยกเลิกการเชื่อมโยง tablespace ที่มีอยู่
ALTER TABLE table_name DISCARD TABLESPACE;
4. นำเข้าไฟล์ .ibd
ALTER TABLE table_name IMPORT TABLESPACE;
5. เริ่มต้น MySQL ใหม่
ตรวจสอบการเข้าถึงตารางด้วย:
SELECT * FROM table_name LIMIT 1;
มีคำสั่งบางอย่างสำหรับการแก้ปัญหา
1. สำหรับข้อผิดพลาดจากการเสียหายของข้อมูล ให้ใช้คำสั่งด้านล่างเพื่อแก้ไขความไม่สอดคล้องกัน:
mysqlcheck --repair db_name table_name
2. หากการนำเข้าพื้นที่ตารางล้มเหลว ให้เพิ่ม innodb_force_recovery=1 ลงใน my.cnf (ค่าตั้งแต่ 1–6; ค่าที่สูงขึ้นอาจทำให้สูญเสียข้อมูลได้)
3. สำหรับปัญหาข้อมูลเมตาที่ไม่ตรงกัน ให้สกัดรายละเอียดสคีมาโดยใช้ SHOW CREATE TABLE table_name และสร้างตารางใหม่หากจำเป็น
หมายเหตุ
ผู้ใช้ MySQL 8.0+ : ไฟล์ .frm ไม่สามารถใช้งานได้อีกต่อไป ให้ใช้คำสั่ง CREATE TABLE แทน
การกู้คืนข้ามเซิร์ฟเวอร์: จับคู่รูปแบบไฟล์ InnoDB
การกู้คืน MySQL จากไฟล์บันทึกและภาพสำรองทำอย่างไร?
สามารถใช้ไฟล์บันทึกแบบไบนารีและภาพสำรองเพื่อกู้คืน MySQL ได้เช่นกัน ไฟล์บันทึกแบบไบนารีจะจับภาพการเปลี่ยนแปลงทั้งหมดที่เกิดขึ้นกับฐานข้อมูล ซึ่งช่วยให้สามารถกู้คืนข้อมูล ณ เวลาที่ต้องการได้ ขณะที่ภาพสำรองที่สร้างโดยเครื่องมืออย่าง mysqlbackup จะเป็นภาพถ่ายของอินสแตนซ์ MySQL ทั้งหมด ทำให้สามารถกู้คืนข้อมูลทั้งหมดได้
ขั้นตอนการกู้คืน MySQL จากไฟล์บันทึก
1. เปิดใช้งานการจดบันทึกแบบไบนารี: ตรวจสอบว่าได้เปิดใช้งานการจดบันทึกแบบไบนารีบนเซิร์ฟเวอร์เพื่อการกู้คืนข้อมูลตามช่วงเวลาที่ต้องการ
2. ใช้ mysqlbinlog: รันคำสั่ง mysqlbinlog mysql-bin.xxxxxx | mysql -u ชื่อผู้ใช้ -p เพื่อนำไฟล์บันทึกมาใช้กับฐานข้อมูล
3. กู้คืนไปยังจุดที่ต้องการ: ปรับไฟล์บันทึกและตำแหน่งเพื่อกู้คืนข้อมูลจนถึงจุดที่ต้องการอย่างแม่นยำ
ขั้นตอนการกู้คืน MySQL จากภาพสำรอง
1. ใช้ mysqlbackup: รันคำสั่ง copy-back-and-apply-log เพื่อกู้คืนข้อมูลจากรูปภาพสำรอง
2. กำหนดค่าเซิร์ฟเวอร์: ตรวจสอบให้แน่ใจว่าการตั้งค่าของเซิร์ฟเวอร์ตรงกับเซิร์ฟเวอร์สำรอง โดยเฉพาะ innodb_data_file_path และ innodb_log_group_home_dir
3. กู้คืนข้อมูลสำรอง: ใช้คำสั่งต่อไปนี้เพื่อกู้คืนข้อมูลสำรอง:
mysqlbackup --datadir=/path/to/datadir --backup-image=/path/to/backup.mbi --backup-dir=/path/to/tmp copy-back-and-apply-log
การสำรองข้อมูลและการกู้คืน MySQL ด้วย Vinchin ทำอย่างไร?
Vinchin เป็นซอฟต์แวร์สำรองข้อมูลฐานข้อมูลระดับองค์กรมืออาชีพ ซึ่งรองรับ MySQL พร้อมทั้งฐานข้อมูลหลักอื่นๆ อีกหลายชนิด เช่น Oracle, SQL Server, MariaDB, PostgreSQL และ PostgresPro โดย Vinchin มีคุณสมบัติการป้องกัน MySQL อย่างครบวงจร ช่วยให้การสำรองข้อมูลและการกู้คืนทำได้ง่ายขึ้น เร็วขึ้น และเชื่อถือได้มากขึ้น
Vinchin มีฟีเจอร์ต่าง ๆ สำหรับการป้องกันฐานข้อมูล เช่น:
การสำรองข้อมูลแบบเพิ่มเติม: ประหยัดพื้นที่จัดเก็บด้วยกลยุทธ์ที่มีประสิทธิภาพ
การสำรองข้อมูลล็อกและการกู้คืนจุดใดๆ: กู้คืนฐานข้อมูล MySQL ไปยังช่วงเวลาใดก็ได้ (เช่น ก่อนที่จะเกิดความเสียหาย)
การบีบอัดข้อมูล & การลดซ้ำซ้อน: ลดขนาดการสำรองข้อมูลได้สูงสุดถึง 70%
การป้องกันแรนซัมแวร์: ปกป้องข้อมูลสำรองจากการถูกมัลแวรีดัดแปลง
คอนโซลเว็บของ Vinchin มีความเรียบง่าย ใช้งานง่าย และเข้าใจได้ทันที การสำรองข้อมูลและกู้คืน MySQL นั้นตรงไปตรงมา และสามารถทำได้เพียงแค่สี่ขั้นตอนง่ายๆ เท่านั้น:
1. เลือกฐานข้อมูล MySQL

2. เลือกที่จัดเก็บข้อมูลสำรอง

3. เลือกกลยุทธ์

4. ส่งงาน

ลองใช้ Vinchin ได้เลยวันนี้ด้วยการใช้งานฟรี 60 วัน พร้อมสิทธิ์เข้าถึงคุณสมบัติทั้งหมดอย่างเต็มรูปแบบ คลิกปุ่มเพื่อรับตัวติดตั้งและติดตั้งได้อย่างง่ายดาย เพื่อให้มั่นใจว่าฐานข้อมูล MySQL ของคุณได้รับการปกป้องอย่างสมบูรณ์
คำถามที่พบบ่อยเกี่ยวกับการกู้คืนฐานข้อมูล MySQL
คำถามที่ 1.ผมสามารถกู้คืน MySQL จากไฟล์ .frm เพียงอย่างเดียวได้ไหม?
ไม่ได้ ไฟล์ .frm มีเพียงคำจำกัดความของตารางเท่านั้น คุณยังต้องการไฟล์ .myd และ .myi สำหรับตาราง MyISAM หรือไฟล์ .ibd สำหรับตาราง InnoDB เพื่อกู้คืนฐานข้อมูลทั้งหมด
คำถามที่ 2. ผมจะกู้คืน MySQL หลังจากเกิดการหยุดทำงานอย่างไร?
ในการกู้คืน MySQL หลังเกิดการล่ม ให้คัดลอกไฟล์สำรองของคุณไปยังไดเรกทอรีข้อมูลของ MySQL โดยตรวจสอบให้แน่ใจว่าไฟล์เหล่านั้นเป็นของผู้ใช้ MySQL จากนั้นรีสตาร์ท MySQL และตรวจสอบฐานข้อมูล
คำถามที่ 3. ผมสามารถกู้คืน MySQL โดยใช้ภาพสำรองได้ไหม?
ได้ ภาพสำรองเหมาะอย่างยิ่งสำหรับการกู้คืน MySQL คุณสามารถใช้เครื่องมือ mysqlbackup เพื่อกู้คืนข้อมูลทั้งหมดจากภาพสำรองได้
สรุป
การกู้คืนฐานข้อมูล MySQL จากไฟล์เป็นทักษะสำคัญสำหรับผู้ดูแลระบบฐานข้อมูล ไม่ว่าคุณจะกำลังกู้คืนจากไฟล์ .frm, .myd, .myi หรือ .ibd การปฏิบัติตามขั้นตอนที่ถูกต้องสามารถช่วยให้กู้คืนข้อมูลของคุณได้อย่างมีประสิทธิภาพ สำหรับกระบวนการสำรองข้อมูลและการกู้คืนที่ราบรื่นมากยิ่งขึ้น ควรพิจารณา Vinchin ซึ่งเป็นโซลูชันระดับองค์กรแบบครบวงจรสำหรับการป้องกันฐานข้อมูล MySQL ที่มีคุณสมบัติสำคัญ เช่น การบีบอัดข้อมูล การสำรองข้อมูลแบบเพิ่มเติม และการกู้คืนข้อมูล ณ เวลาใดก็ได้ สำหรับ MySQL
เริ่มต้นใช้งาน Vinchin ได้เลยวันนี้ ทดลองใช้งานฟรี 60 วัน และติดตั้งง่ายมากเพื่อปกป้องฐานข้อมูล MySQL ของคุณ
แชร์บน: