วิธีการนำเข้าและส่งออกฐานข้อมูลใน MySQL
- หมวดหมู่: ลินุกซ์
เมื่อเร็ว ๆ นี้ฉันได้ทำการครอบคลุม MySQL เป็นจำนวนมาก แน่นอนว่ามีสาเหตุหลายประการ - MySQL เป็นฐานข้อมูลที่ได้รับความนิยมเนื่องจากมีความยืดหยุ่นและเชื่อถือได้ จนถึงตอนนี้ฉันได้กล่าวถึง MySQL Workbench แล้ว (ดูบทความของฉัน ' แพ็คเกจการจัดการฐานข้อมูลที่สมบูรณ์ MySQL Workbench ') ผู้ดูแลระบบ MySQL (ดูบทความของฉัน' การสร้างฐานข้อมูลด้วย MySQL Administrator '), MySQL Navigator (ดูบทความของฉัน' จัดการฐานข้อมูล MySQL ของคุณด้วย GUI ที่ใช้งานง่าย ') หรือ PhpMyAdmin (ดูบทความของฉัน' ติดตั้ง PhpMyAdmin เพื่อการดูแลระบบ MySQL ที่ง่ายดาย ') ผ่านบทความ LAMP ของฉัน ' วิธีการติดตั้งเซิร์ฟเวอร์ LAMP 'คุณได้เรียนรู้วิธีการติดตั้ง MySQL คราวนี้ฉันจะแสดงวิธีการส่งออกฐานข้อมูลแล้วนำเข้าสู่เซิร์ฟเวอร์ MySQL อื่น และในที่สุดความสามารถในการเชื่อมต่อกับเซิร์ฟเวอร์ MySQL จากเครื่องระยะไกลก็แสดงไว้ในบทความของฉัน ' อนุญาตการเชื่อมต่อระยะไกลไปยังเซิร์ฟเวอร์ MySQL ของคุณ '
ทำไมคุณถึงทำเช่นนี้? เหตุผลที่ดีอย่างหนึ่งคือการอัปเดตฮาร์ดแวร์หรือการเปลี่ยนฮาร์ดแวร์ที่กำลังจะตายบนเซิร์ฟเวอร์ MySQL ของคุณ หากฮาร์ดแวร์นั้นกำลังจะตายคุณจะต้องนำฐานข้อมูลของคุณออกจากไดรฟ์ที่กำลังจะตายและลงในไดรฟ์ฟรี วิธีที่น่าเชื่อถือที่สุดและง่ายที่สุดคือการใช้เครื่องมือบรรทัดคำสั่ง MySQL ในตัว นั่นคือสิ่งที่เราจะทำที่นี่
เครื่องมือที่คุณต้องการ
ก่อนอื่นคุณจะใช้สองคำสั่งซึ่งทั้งสองคำสั่งได้รับการติดตั้งบนเซิร์ฟเวอร์ MySQL ของคุณแล้ว สองคำสั่งคือ:
- mysqldump: นี่คือคำสั่งที่ใช้ในการส่งออกฐานข้อมูลของคุณ
- mysql: นี่คือคำสั่งที่คุณจะใช้เพื่อนำเข้าฐานข้อมูลของคุณ
คุณจะต้องมีวิธีในการขนส่งฐานข้อมูลของคุณจากเครื่องหนึ่งไปยังอีกเครื่องหนึ่ง ฉันขอแนะนำซีดี / ดีวีดีแบบเขียนได้ (ขึ้นอยู่กับขนาด) หรือแฟลชไดรฟ์ USB หากคุณใช้ FTP อาจมีปัญหาข้อมูลเสียหายที่คุณไม่ต้องการจัดการ นอกจากนี้หากคุณวางฐานข้อมูลเหล่านั้นบนอุปกรณ์แบบถอดได้คุณจะมีสำเนาสำรองหากมีบางอย่างผิดปกติ
นอกจากวิธีการส่งออกฐานข้อมูลแล้วคุณจะต้องมีรหัสผ่านผู้ดูแลระบบ MySQL ด้วย เมื่อทุกอย่างอยู่ในมือเรามาที่การส่งออกกันเถอะ
การส่งออก
คุณไม่ต้องใช้รหัสผ่านผู้ดูแลระบบเพื่อออกคำสั่ง mysqldump คุณไม่ต้องใช้ sudo เพื่อออกคำสั่งนี้ ดังนั้นในการส่งออกฐานข้อมูลของคุณให้เปิดหน้าต่างเทอร์มินัลและออกคำสั่งต่อไปนี้:
mysqldump -u USER -p ฐานข้อมูล> FILENAME.sql
ที่ไหน USER เป็นผู้ใช้ผู้ดูแลระบบ MySQL ฐานข้อมูล คือฐานข้อมูลที่คุณต้องการส่งออกและ ชื่อไฟล์ คือชื่อไฟล์ที่คุณต้องการตั้งชื่อไฟล์ที่ส่งออก (ดีที่สุดคือใช้ชื่อฐานข้อมูลสำหรับชื่อไฟล์เพื่อหลีกเลี่ยงความสับสน)
เมื่อคุณออกคำสั่งนี้คุณจะได้รับแจ้งให้ใส่รหัสผ่านผู้ดูแลระบบ MySQL ป้อนรหัสผ่านนั้นแล้วกดปุ่ม Enter ในไดเร็กทอรีที่คุณออกคำสั่งตอนนี้คุณจะมีไฟล์ที่มีนามสกุล. sql ซึ่งเป็นไฟล์ที่คุณต้องคัดลอกไปยังซีดีดีวีดีหรือแฟลชไดรฟ์ USB
การนำเข้า
ตอนนี้คุณมีไฟล์นั้นในสื่อแบบถอดได้แล้วให้ส่งไฟล์นั้นไปยังเครื่องใหม่ใส่สื่อติดตั้งสื่อ (ถ้าจำเป็น) และคัดลอกไฟล์ไปยังโฮมไดเร็กทอรีของผู้ใช้ของคุณ ตอนนี้เปิดหน้าต่างเทอร์มินัลและออกคำสั่ง:
mysql -u USER -p ฐานข้อมูล < ชื่อไฟล์ .sql
ที่ไหน USER คือชื่อผู้ใช้ผู้ดูแลระบบ MySQL ฐานข้อมูล คือชื่อของฐานข้อมูลที่จะนำเข้าและ FILENAME.sql คือดัมพ์ที่ส่งออกจากเครื่องเริ่มต้น
คุณจะได้รับแจ้งให้ใส่รหัสผ่านผู้ดูแลระบบ MySQL จากนั้นส่วนใหญ่คุณจะถูกส่งกลับไปที่พร้อมท์และไม่มีข้อผิดพลาด
แค่นั้นแหละ. คุณได้ส่งออกและนำเข้าฐานข้อมูลอย่างเป็นทางการจากเครื่องหนึ่งไปยังอีกเครื่องหนึ่ง