วิธีการส่งออกและนำเข้าฐานข้อมูล MySQL ทั้งหมด

นักพัฒนาซอฟต์แวร์และผู้ใช้ Pro หลายคนพึ่งพา MySQL สำหรับความต้องการของฐานข้อมูล เราจะเดินผ่านวิธีการส่งออกหรือถ่ายโอนข้อมูลฐานข้อมูลทั้งหมดจาก MySQL การถ่ายโอนข้อมูลฐานข้อมูลเดียวและยังแสดงวิธีการนำเข้าฐานข้อมูลทั้งหมดจากไฟล์ database.sql กลับไปยัง MySQL

แม้ว่าจะมีเครื่องมือที่ใช้ GUI เพื่อโต้ตอบกับ MySQL เราจะมุ่งเน้นไปที่บรรทัดคำสั่งที่นี่ คำสั่ง MySQL ทำงานกับซอฟต์แวร์ฐานข้อมูลเวอร์ชันใดก็ได้บน Unix OS รวมถึง Linux, Mac OS และ Mac OS X หรือสิ่งอื่นที่คุณใช้งาน mySQL อยู่

เราจะสมมติว่าคุณได้ติดตั้ง MySQL และรันอยู่แล้วหากไม่สามารถเรียนรู้เกี่ยวกับการเริ่มต้นและหยุดเซิร์ฟเวอร์ MySQL บน Mac OS ได้ที่นี่และสามารถดาวน์โหลด MySQL ได้ที่นี่หรือหากคุณกำลังมองหาสแต็คเว็บเซิร์ฟเวอร์ทั้งหมด ง่ายต่อการใช้ MAMP สำหรับ Mac

วิธีการถ่ายโอนฐานข้อมูลทั้งหมดจาก MySQL ผ่านทางบรรทัดคำสั่ง

วิธีที่ง่ายที่สุดในการถ่ายโอนข้อมูลฐานข้อมูลทั้งหมดจาก MySQL ลงในไฟล์. sql สำหรับการสำรองข้อมูลหรือการโยกย้ายหรืออื่น ๆ ใช้แฟลกของฐานข้อมูลทั้งหมดเช่น:

mysqldump --all-databases > all_databases_dump.sql

เนื่องจากคำสั่งนี้จะเอ็กซ์พอร์ตฐานข้อมูลทั้งหมดจึงไม่จำเป็นต้องระบุชื่อฐานข้อมูล ฐานข้อมูลทั้งหมดที่เก็บไว้ใน mySQL จะถูกทิ้งลงในไฟล์ส่งออก "all_databases_dump.sql" ในไดเร็กทอรีการทำงานปัจจุบัน

หากต้องการคุณสามารถระบุชื่อผู้ใช้และรหัสผ่านเมื่อทิ้งฐานข้อมูลทั้งหมดเช่นนี้ในกรณีนี้ด้วยชื่อผู้ใช้ที่เป็น root:

mysqldump -u root -p --all-databases > all_databases.sql

หลังจากฐานข้อมูล mysql ถูกทิ้งไปแล้วความชอบส่วนบุคคลของฉันคือการสร้าง tar gzip จากที่อธิบายไว้ในที่นี้ แต่เป็นตัวเลือกทั้งหมด

วิธีการส่งออกฐานข้อมูลเฉพาะจาก MySQL

ถ้าคุณต้องการถ่ายโอนข้อมูลฐานข้อมูลโดยใช้ชื่อแทนที่จะส่งออกฐานข้อมูลทั้งหมดที่เท่าเทียมกันเป็นเรื่องง่าย:

mysqldump database_name > database_name_dump.sql

คำสั่ง mysqldump มีพารามิเตอร์และแฟล็กหลายตัวซึ่งสามารถเป็นประโยชน์สำหรับการส่งออกและการสำรองฐานข้อมูลคุณสามารถเรียนรู้เพิ่มเติมจากหน้าคู่มือด้วย "man mysqldump" หรือโดยการอ่านที่นี่บนเว็บไซต์ dev.mysql

วิธีการนำเข้าฐานข้อมูลทั้งหมดลงใน MySQL

แน่นอนถ้าคุณมีการถ่ายโอนข้อมูลฐานข้อมูลการอิมพอร์ตที่ลงใน MySQL เป็นสิ่งสำคัญ นี่เป็นวิธีที่ง่ายที่สุดในการนำเข้าฐานข้อมูลทั้งหมดจากไฟล์ database.sql ไปยัง MySQL ผ่านทางบรรทัดคำสั่ง:

mysql database_name < database_dump.sql

และเช่นการเอ็กซ์พอร์ตฐานข้อมูลเมื่อนำเข้าคุณสามารถระบุชื่อผู้ใช้หากต้องการ:

mysql -u root -p < database_dump.sql

คุณระบุชื่อผู้ใช้หรือฐานข้อมูลอื่นถ้าต้องการเช่นกัน:

mysql -u user -p database_name < database_dump.sql

การนำเข้าฐานข้อมูลเฉพาะใน MySQL

นอกจากนี้คุณยังสามารถนำเข้าฐานข้อมูลเฉพาะในการถ่ายโอนข้อมูลขนาดใหญ่โดยใช้ชื่อ:

mysql --one-database database_name < all_databases.sql

ก่อนหน้านี้ถ้าคุณมีปัญหาเกี่ยวกับการนำเข้าฐานข้อมูลลงใน mysql คุณสามารถหันไปที่หน้าคู่มือกับ 'man mysql' หรือไปที่เอกสารอย่างเป็นทางการได้ที่เว็บไซต์นักพัฒนาซอฟต์แวร์ mysql

รู้เทคนิคใด ๆ ที่น่าสนใจสำหรับการส่งออกฐานข้อมูลและการนำเข้าฐานข้อมูลใน MySQL? แจ้งให้เราทราบในความคิดเห็น!