ทำ Hot backup percona MongoDB อย่างไร? by

15
Nov
0

** Blog นี้ใช้งาน Percona Mongodb เป็นหลักนะครับซึ่งวิธีการ Backup จะต่างจาก Mongodb เวอร์ชั่นธรรมดาที่ใช้ mongodump หากต้องการทราบรายละเอียดเพิ่มเติม คลิกเพื่ออ่าน Blog เก่าได้ที่นี่

คำสั่ง Backup Percona MongoDB ง่ายมากเลยครับ ขั้นแรกให้เข้า mongo shell ก่อน แล้วใช้คำสั่งตามด้านล่าง

use admin
db.runCommand({backupStart:"/my/backup/data/path"})

โดยแก้ไขส่วนของ /my/backup/data/path เป็น path ที่เราต้องการเซฟ backup ไว้เท่านี้ก็เรียบร้อย ง่ายสุดๆ สั่ง Backup ระหว่างใช้งานโดยไม่กระทบกับผู้ใช้งานปัจจุบันได้เลยครับ แต่ถ้าหากต้องการรันผ่าน linux shell ตรงๆ โดยไม่ต้องเข้า Mongo shell ก่อนก็สั่งดังนี้ได้เลยครับ

mongo --eval "db = db.getSiblingDB('admin'); db.runCommand({backupStart:\"/my/backup/data/path\"});"
tar -cv -C /my/backup/data path | pbzip2 -cv > my_backup.tar.gz2

เพียงเท่านี้ก็จะสามารถตั้ง cron สั่ง backup รายวันได้ทันที แก้ไขตำแหน่งไฟล์ที่ backup ได้ตามสะดวก และสั่ง pbzip2 ให้รวมเป็นไฟล์เดียวเล็กๆ เรียบร้อย

สำหรับวิธี Restore ไม่มีอะไรซับซ้อน ไฟล์ที่เรา backup มานั่นแหละคือ data ของฐานข้อมูล mongodb เต็มๆ สิ่งที่ต้องทำมีเพียง stop mongodb ที่รันอยู่แล้วลบไฟล์ database mongodb ทั้งหมดออกไป (ตัวทั่วไปมักจะอยู่ที่ /var/lib/mongodb) แล้วเอาไฟล์ที่เรา backup ไว้ไปใส่แทน แล้วแก้ owner ของไฟล์เป็น mongod ผ่านคำสั่ง chown แล้วสั่ง start mongodb ขึ้นมาอีกรอบเป็นอันเรียบร้อย ง่ายมากๆ

 เราชนะรอบ 4 | ยืมเงิน 3000 ด่วน | แอพกู้เงิน | แอพเงินด่วน | สินเชื่อออนไลน์อนุมัติทันที | Site Map | กู้เงินก้อน | กระเป๋าตัง | thisshop และ ยืมเงินฉุกเฉิน 5000 ด่วน