Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

mysqldump - โปรแกรมสำรองฐานข้อมูล MySQL


ยูทิลิตี้ไคลเอนต์ 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