เมื่อจำเป็นต้องถ่ายโอนฐานข้อมูลระหว่างสถาปัตยกรรมที่แตกต่างกัน คุณสามารถใช้ 'mysqldump' เพื่อสร้างไฟล์ได้ ไฟล์นี้จะมีคำสั่ง SQL การถ่ายโอนไฟล์สามารถทำได้จากเครื่องหนึ่งไปยังอีกเครื่องหนึ่ง และไฟล์นี้สามารถใช้เป็นอินพุตไปยังไคลเอนต์ 'mysql' ได้
ย้ายฐานข้อมูลระหว่างสองเครื่อง
วิธีหนึ่งในการย้ายฐานข้อมูลระหว่างสองเครื่องคือการรันคำสั่งบนเครื่องที่มีฐานข้อมูลอยู่ -
mysqladmin −h 'other_hostname' create db_name mysqldump db_name | mysql −h 'other_hostname' db_name
คัดลอกฐานข้อมูลจากเครื่องระยะไกลผ่านเครือข่ายที่ช้า
หากจำเป็นต้องคัดลอกฐานข้อมูลจากเครือข่ายระยะไกลผ่านเครือข่ายที่ช้า คำสั่งด้านล่างสามารถดำเนินการได้ -
mysqladmin create db_name mysqldump −h 'other_hostname' −−compress db_name | mysql db_name
ดัมพ์ MySQL
ดัมพ์สามารถจัดเก็บไว้ในไฟล์ และหลังจากนั้นก็สามารถโอนไปยังเครื่องเป้าหมายได้ ขั้นตอนต่อไปคือการโหลดไฟล์ลงในฐานข้อมูล ให้เรายกตัวอย่างที่จำเป็นในการดัมพ์ฐานข้อมูลไปยังไฟล์บีบอัดบนเครื่องต้นทาง ได้แสดงไว้ด้านล่าง -
mysqldump −−quick db_name | gzip > db_name.gz
ไฟล์ที่มีเนื้อหาฐานข้อมูลจำเป็นต้องถ่ายโอนจากเครื่องเป้าหมายไปยังเครื่องต้นทาง ต้องดำเนินการคำสั่งด้านล่าง −
mysqladmin create db_name gunzip < db_name.gz | mysql db_name
นอกจากนี้ ยังสามารถฟ้อง 'mysqldump' และ 'mysqlimport' เพื่อโอนเนื้อหาฐานข้อมูลได้ สำหรับฐานข้อมูลที่มีข้อมูลจำนวนมาก สามารถใช้ 'mysqldump' และ 'mysqlimport' ร่วมกันเพื่อเพิ่มความเร็วของการดำเนินการ 'DUMPDIR' หมายถึงชื่อพาธแบบเต็มของไดเร็กทอรีที่เก็บเอาต์พุตของ 'mysqldump'
ขั้นแรก ไดเร็กทอรีถูกสร้างขึ้นเพื่อให้สามารถดัมพ์ไฟล์เอาต์พุตและเนื้อหาฐานข้อมูลได้ สามารถทำได้โดยใช้คำสั่งด้านล่าง -
mkdir DUMPDIR mysqldump −−tab=DUMPDIR db_name
จากนั้น ไฟล์สามารถถ่ายโอนจากไดเร็กทอรี DUMPDIR ไปยังไดเร็กทอรีที่เกี่ยวข้องบนเครื่องเป้าหมาย ขั้นตอนต่อไปคือการโหลดไฟล์ลงใน MySQL สามารถทำได้โดยใช้คำสั่งด้านล่าง −
mysqladmin create db_name # create database cat DUMPDIR/*.sql | mysql db_name # create tables in database mysqlimport db_name DUMPDIR/*.txt # load data into tables