ยูทิลิตี้ไคลเอนต์ mysqldump ช่วยทำการสำรองข้อมูลแบบลอจิคัล ดังนั้นจึงสร้างชุดคำสั่ง SQL ที่สามารถดำเนินการเพื่อสร้างข้อกำหนดออบเจ็กต์ฐานข้อมูลและข้อมูลตารางดั้งเดิมขึ้นมาใหม่
การใช้งาน mysqldump
-
มันทิ้งฐานข้อมูล MySQL หนึ่งฐานข้อมูลขึ้นไปเพื่อสำรองหรือถ่ายโอนไปยังเซิร์ฟเวอร์ SQL อื่น
-
คำสั่ง mysqldump ยังสร้างเอาต์พุตในรูปแบบ CSV ข้อความที่คั่นด้วยอื่น หรือรูปแบบ XML
-
ยูทิลิตี้ mysqldump ต้องการอย่างน้อยสิทธิ์ SELECT สำหรับตารางที่ถูกดัมพ์, SHOW VIEW สำหรับมุมมองที่ถูกดัมพ์, TRIGGER สำหรับทริกเกอร์ที่ดัมพ์, LOCK TABLES หากไม่ใช้ตัวเลือก --single-transaction และ PROCESS หาก --no-tablespaces ไม่ได้ใช้งาน .
-
ฐานข้อมูลสามารถโคลนได้เพื่อวัตถุประสงค์ในการพัฒนาและงาน DBA หรือสามารถใช้เพื่อสร้างรูปแบบเล็กน้อยของฐานข้อมูลที่มีอยู่ซึ่งอาจจำเป็นสำหรับวัตถุประสงค์ในการทดสอบ
-
สำหรับการสำรองและกู้คืนข้อมูลขนาดใหญ่ ขอแนะนำให้ทำการสำรองข้อมูลจริง จากนั้นคัดลอกไฟล์ข้อมูลในรูปแบบดั้งเดิม ซึ่งจะทำให้กู้คืนข้อมูลได้อย่างรวดเร็ว:
-
หากตารางเป็นตาราง InnoDB เป็นหลัก หรือหากมีตาราง InnoDB และ MyISAM ผสมกัน คำสั่ง mysqlbackup จะใช้สำหรับผลิตภัณฑ์ MySQL Enterprise Backup ให้ประสิทธิภาพที่ดีที่สุดสำหรับการสำรองข้อมูล InnoDB และมีการหยุดชะงักน้อยที่สุด
-
mysqldump ยังสามารถใช้เพื่อดึงและถ่ายโอนเนื้อหาของตารางทีละแถว หรือสามารถใช้เพื่อดึงเนื้อหาทั้งหมดจากตารางและบัฟเฟอร์ในหน่วยความจำก่อนที่จะดัมพ์
ไวยากรณ์
มีสามวิธีในการใช้ mysqldump เพื่อดัมพ์ชุดของตารางตั้งแต่หนึ่งตารางขึ้นไป ชุดของฐานข้อมูลที่สมบูรณ์อย่างน้อยหนึ่งชุด หรือเซิร์ฟเวอร์ MySQL ทั้งหมด ได้แสดงไว้ด้านล่าง −
shell> mysqldump [options] db_name [tbl_name ...] shell> mysqldump [options] --databases db_name ... shell> mysqldump [options] --all-databases
หากผู้ใช้ต้องการดัมพ์ฐานข้อมูลทั้งหมด ไม่ควรตั้งชื่อตารางที่ตามหลัง db_name หรือใช้ตัวเลือก --databases หรือ --all-databases