Ruk-Com PaaS ได้จัดเตรียม certified database stacks ทั้งหมดไว้ด้วยความสะดวกสบายและสคริปต์ที่ตรงประเด็นสำหรับการสำรองข้อมูล ดังนั้นการประมวลผลนี้เรียบง่ายเพียงแค่ระบุพารามิเตอร์ที่ต้องการและสามารถทำได้โดยใช้เวลาเพียงไม่กี่นาที ในที่นี้ไม่จำเป็นที่จะต้องมีความรู้เฉพาะทาง เพียงแค่ทำตามขั้นตอนการติดตั้ง setup steps เพื่อทำการตั้งค่า crontab ที่เหมาะสม
นอกจากนี้ เราจะแสดงให้เห็นว่าคุณสามารถที่จะทำงานร่วมกับการสร้างการสำรองข้อมูลได้อย่างไร
สำหรับการสอนนี้ เราจะใช้ฐานข้อมูล MySQL/MariaDB เป็นตัวอย่าง อย่างไรก็ตามขั้นตอนที่จำเป็นต่าง ๆ นั้นมีความคล้ายกับฐานข้อมูลประเภทอื่นใน Ruk-Com Platform
การตั้งเวลาการสำรองข้อมูล
ใช้สคริปต์สำหรับการสำรองข้อมูลที่เป็นค่าตั้งต้นเพื่อทำให้กระบวนการสร้างการสำรองข้อมูลเป็นไปอย่างอัตโนมัติและตั้งค่าเฉพาะต่าง ๆ ที่ต้องการ (เช่น ความถี่ในการสำรองข้อมูล, จำนวนที่ต้องการเก็บไฟล์ย้อนหลัง, อื่น ๆ ) ตามนี้ถ้าคุณยังไม่มีสภาพแวดล้อมของฐานข้อมูล ให้ทำตามแนวทาง การสร้าง Database เพื่อสร้างขึ้นมา
1. source code ของสคริปต์นั้นสามารถดูได้โดยตรงจากแดชบอร์ด คลิกที่ปุ่ม Config ที่อยู่ถัดจากฐานข้อมูลเพื่อเปิด built-in file manager และค้นหาไฟล์ /var/lib/jelastic/bin/backup_script.sh
สคริปต์การสำรองข้อมูลนั้นไม่รองรับสำหรับ Redis stack ที่ใช้ในการจัดเก็บ key-value โดยปกติแล้วมักใช้เป็นเพียงแค่ระบบ Caching หรือเก็บข้อมูลชั่วคราว
2.เพื่อดำเนินการสคริปต์โดยอัตโนมัติ เราจะใช้ link cron scheduler ที่มีอยู่ใน Container แบบสำเร็จรูป เปิดไฟล์ /var/spool/cron/mysql และให้ใช้ cron expression ตามรูปแบบต่อไปนี้
ในสคริปด้านบนจะเห็นว่าเราได้ทำตัวอย่างไว้แล้วในแต่ละ feature สามารถเอา Comment ออกเพื่อเปิดให้ Crontab ทำงาน หลังจากนั้นตั้งค่าส่วนต่างๆตามนี้
- {frequency} – กำหนดเวลาของการเรียกใช้สคริปต์ (รายละเอียดดูได้จากลิงก์แนวทางด้านบน), เช่น */10 * * * * เพื่อสำรองข้อมูลทุก ๆ 10 นาที
- {path-to-script} – ชี้ไปยังสคริปต์ที่ต้องการ (สคริปต์การสำรองข้อมูลค่าเริ่มต้นได้ตั้งไว้ที่ /var/lib/jelastic/bin/backup_script.sh)
- {script-parameters} – จัดเตรียมพารามิเตอร์ที่กำหนดเองสำหรับคริปต์ที่กำหนด; สิ่งต่อไปนี้มีอยู่ในกรณีของเรา:
- -m {mode} เพื่อสำรองข้อมูลทั้งหมดหรือบางส่วนของฐานข้อมูล (“-m dumpall” หรือ “-m dump” ตามลำดับ)
- -c {count} กำหนดตัวเลขของการสำรองข้อมูลอันเก่าเพื่อจัดเก็บ (เช่น “-c 3” เพื่อเก็บการสำรองข้อมูลเก่า 3 ชุดเช่น 1 2 3 1 2 3 ไฟล์จะถูกทับไปเรื่อยๆเพื่อไม่ให้เปลืองพื้นที่
- -u {user} และ -p {password} รหัสผ่านสำหรับเข้าถึงสำหรับฐานข้อมูล (จะได้รับทาง Email หลังจากสร้าง Env เสร็จ)
ถ้า {password} ของคุณมีตัวอักขระพิเศษ ควรครอบด้วย ” นอกจากนี้ เนื่องจากความเฉพาะของ cron คุณจำเป็นที่จะต้องเพิ่มอักษรแบบ escaping อย่างสัญลักษณ์ % โดยการเพิ่ม backslash เข้าไปก่อนหน้า ตัวอย่างเช่น -p “passw\\%rd”
- -d {databases} และ -t {tables} เพื่อระบุรายการเลือกของฐานข้อมูล (“-d db1[,db2,db3….]”) หรือ ตารางที่อยู่ในฐานข้อมูล (“-d db -t table1[,table2,table3….]”) เพื่อสำรองข้อมูล
3. ตัวอย่าง ถ้าคุณต้องการสำรองข้อมูลทั้งหมดจากฐานข้อมูลทุก ๆ 10 นาที ด้วยการช่วยเหลือจากสคริปต์เริ่มตั้น ถ้าเช่นนั้นสตริงควรเป็นตามนี้
บันทึกการตั้งค่าเพื่อนำไปใช้
4.เพื่อที่จะจัดเก็บข้อมูลบนโหนดของ Container อื่นหรือการรีโมทเซิร์ฟเวอร์สามารถที่จะกำหนดค่า mount point ที่เหมาะสม สำหรับฐานข้อมูลของคุณ
ข้อมูลต่าง ๆ ที่มีอยู่ในโฟลเดอร์ mount point จะถูกแทนที่ด้วยไฟล์จากไดเรกทอรีที่มากจากการรีโมท
ตรวจสอบการสำรองข้อมูล
รอให้สคริปดำเนินการ (ขึ้นอยู่กับความถี่ของ cron ที่ได้กำหนดค่าไว้) และไปที่โฟลเดอร์ /var/lib/jelastic/backup
ถ้าดำเนินการสำรองข้อมูลเสร็จสิ้น คุณจะเห็น bz2 จัดเก็บไว้ในไดเรกทอรี
ดาวน์โหลดการสำรองข้อมูล
มีตัวเลือกที่หลากหลายสำหรับการดาวโหลดไฟล์จาก Ruk-Com Container
1. ในทางตรงทีสุดคือการใช้ configuration file manager โดยตรงในแดชบอร์ด
ค้นหาไฟล์ที่ต้องการ วางเมาส์ไว้เหนือตำแหน่ง และกดดาวน์โหลดจากเมนูที่แสดง
2.ตัวเลือกอีกอย่างคือใช้การเชื่อมต่อ SFTP/FISH protocol
รายละเอียดการเข้าถึงที่จำเป็นสามารถดูได้ในแดชบอร์ด
3.นอกจากนี้ยังสามารถติดตั้ง FTP add-on สำหรับฐานข้อมูลเพื่อจัดการไฟล์ผ่าน FTP
public IP address นั้นจำเป็นสำหรับตัวเลือกนี้ หากมีความจำเป็นมันจะเชื่อมต่อกับโหนดโดยอัตโนมัติระหว่างการติดตั้งส่วนเสริม
คุณสามารถเลือกตัวเลือกใดก็ได้ ตามความต้องการของคุณ
การกู้คืนฐานข้อมูล
ในกรณีที่จำเป็น คุณสามารถกู้คืนฐานข้อมูลจากการสำรองข้อมูลได้อย่างง่าย จากตัวอย่าง MySQL ของเรา ให้ทำตามขั้นตอนที่จำเป็นต่อไปนี้ :
1. เข้าไปยังพาเนล phpMyAdmin ด้วยรายละเอียดจากอีเมลที่ได้รับหลังจากการสร้าง DB Node
2. ไปที่แท็บ Import ติ๊กตัวเลือก Browse your computer และใช้ปุ่ม Choose File เพื่ออัปโหลดการสำรองข้อมูลที่จำเป็น
กดปุ่ม Go ที่อยู่ด้านล่างของหน้า
3.เมื่อการนำเข้าสำเร็จเรียบร้อย คุณจะเห็นการแจ้งเตือนขึ้นในพาเนลแอดมิน
นั่นก็คือทั้งหมด ตอนนี้คุณสามารถมั่นใจได้ว่าข้อมูลทั้งหมดจะได้รับการ Backup เป็นระยะตามช่วงเวลาที่ต้องการและในกระณีที่จำเป็น สามารถกู้คืนหรือนำกลับมาใช้ใหม่ได้อย่างง่ายดาย