หากใครที่ใช้ phpMyAdmin และต้องทำการ export database บ่อยครั้ง อาจจะเป็นการน่าเบื่อที่ต้องเข้ามาเปิด phpMyAdmin ผ่าน browser แล้วคลิกหลายครั้งเพื่อที่จะเอาข้อมูล database ออกมาเป็น .sql ไฟล์
จริงๆ แล้ว MySql ได้มีตัว command line program ที่มาช่วยในการ export ข้อมูลออกจาก server อยู่แล้ว ที่มีชื่อว่า mysqldump.exe หากติดตั้งด้วย package AppServ ไฟล์นี้จะอยู่ใน folder
C:\AppServ\MySQL\bin ซึ่งเป็น path ที่ได้ถูกเก็บเข้าไปใน Varible Path แล้วทำให้สามารถเรียกใช้คำสั่ง mysqldump ผ่าน command prompt ที่ใดก็ได้
เพื่อการใช้งานที่สะดวกยิ่งขึ้นเราก็เขียนคำสั่งเพื่อ export database ไว้ใน batch ไฟล์ เพียง double click batch ไฟล์ .sql ไฟล์ก็ถูกสร้างโดยอัตโนมัติ เป็นการลดขั้นตอนการทำงานที่ซ้ำซ้อน
มาดูขั้นตอนการเขียนคำสั่งกัน
1. เปิด Notepad
2. copy คำสั่งต่อไปนี้ไปวางใน Notepad
@ECHO OFF mysqldump -uroot -p1234 sonsod > sonsod.sql echo "export database to sonsod.sql successfully" pause
คำอธิบาย
@ECHO OFF บอกว่าไม่ต้องการให้แสดงคำสั่งที่เราได้เขียนไปออกสู่หน้าจอ
mysqldump -uroot -p1234 sonsod > sonsod.sql คำสั่งในการ export dabase คำสั่งที่ใช้คือ mysqldump ที่มีพารามิเตอร์ดังนี้
-uroot เป็นพารามิเตอร์เพื่อระบุ username ของ database เขียน -u ตามด้วย username ไม่ต้องมีช่องว่างคั่น
-p1234 เป็นพารามิเตอร์เพื่อระบุ password ของ database เขียน -p ตามด้วย password ไม่ต้องมีช่องว่างคั่น
sonsod ระบุชื่อ database
> sonsod.sql ระบุชื่อ file ที่เก็บข้อมูล database ที่ export ออกมา เขียน > ตามด้วยชื่อไฟล์ที่ต้องการที่มีนามสกุล .sql
echo "export database to sonsod.sql successfully" คำสั่งนี้เขียนเพื่อแสดงผลหน้าจอว่าได้ทำการ export ข้อมูลเรียบร้อยแล้ว
pause เป็นการหยุดการทำงานหน้าจอ command prompt ชั่วขณะ เพราะหากไม่มีคำสั่งนี้ คำสั่งต่างๆ จะถูกทำงานจากบนลงล่าง เมื่อคำสั่งสุดท้ายทำงานเรียบร้อยแล้ว หน้าต่าง command prompt จะปิดไปโดยอัตโนมัติ เราก็จะมองข้อความที่แสดงว่าการ export เสร็จแล้วไม่ทัน
4. ที่ Notepad เลือก file > Save As > เลือกที่เก็บไฟล์ ตั้งชื่อไฟล์ว่า export database.bat แล้วที่ drop down Save as type: ให้เลือก All Files(*.*) กดปุ่ม Save
5. double click export database.bat ที่ได้สร้างไว้ จะพบว่ามี file *.sql ถูกสร้างขึ้นใน folder เดียวกับที่เก็บ export database.bat
หากต้องการ export database ในครั้งต่อๆ ไป เพียงแค่ double click export database.bat
ลองเอาไปใช้กันดูนะครับ :)