本文主要介紹了關于Mongodb實現定時備份與恢復的相關內容,分享出來供大家參考學習,下面來一起看看詳細的介紹:
MongoDB 數據備份
在 MongoDB 中我們使用 mongodump 命令來備份 MongoDB 數據
語法如下:
> mongodump -h dbhost -d dbname -o dbdirectory -u user -p password
MongoDB 數據恢復
mongodb/253260.html">mongodb 使用 mongorestore 命令來恢復備份的數據
>mongorestore -h <hostname><:port> -d dbname <path>
1、--host <:port>, -h <:port>:MongoDB所在服務器地址,默認為: localhost:27017
2、--db , -d :需要恢復的數據庫實例,例如:test,當然這個名稱也可以和備份時候的不一樣,比如test2
3、--drop:恢復的時候,先刪除當前數據,然后恢復備份的數據。就是說,恢復后,備份后添加修改的數據都會被刪除,慎用哦!
4、<path>:
最后的一個參數,設置備份數據所在位置,例如:c:datadumptest。
你不能同時指定 <path> 和 --dir 選項,--dir也可以設置備份目錄。
5、--dir:指定備份的目錄
你不能同時指定 <path> 和 --dir 選項。
定時備份 mongodb
環境
操作系統: Centos 7
一、 備份 shell 腳本 (/home/crontab/mongobk.sh)
#!/bin/sh# dump 命令執行路徑,根據mongodb安裝路徑而定DUMP=/usr/bin/mongodump# 臨時備份路徑OUT_DIR=/home/backup/mongod_bak/mongod_bak_now# 壓縮后的備份存放路徑TAR_DIR=/home/backup/mongod_bak/mongod_bak_list# 當前系統時間DATE=`date +%Y-%m-%d`# 數據庫賬號DB_USER=user# 數據庫密碼DB_PASS=password# 代表刪除7天前的備份,即只保留近 7 天的備份DAYS=7# 最終保存的數據庫備份文件TAR_BAK="mongod_bak_$DATE.tar.gz"cd $OUT_DIRrm -rf $OUT_DIR/*mkdir -p $OUT_DIR/$DATE$DUMP -h 127.0.0.1:27017 -u $DB_USER -p $DB_PASS -d dbname -o $OUT_DIR/$DATE# 壓縮格式為 .tar.gz 格式tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE# 刪除 15 天前的備份文件find $TAR_DIR/ -mtime +$DAYS -deleteexit
二、創建對應的備份目錄
mkdir -p /home/backup/mongodb_bak/mongodb_bak_nowmkdir -p /home/backup/mongodb_bak/mongodb_bak_list
三、修改文件屬性,使其可執行
chmod +x MongoDB_bak.sh
四、添加到計劃任務
cron服務是Linux的內置服務,但它不會開機自動啟動。可以用以下命令啟動和停止服務:
/sbin/service crond start/sbin/service crond stop/sbin/service crond restart/sbin/service crond reload
以上1-4行分別為啟動、停止、重啟服務和重新加載配置。
要把cron設為在開機的時候自動啟動,在 /etc/rc.d/rc.local 腳本中加入 /sbin/service crond start
即可
查看當前用戶的crontab,輸入 crontab -l
;
編輯crontab,輸入 crontab -e
;
刪除crontab,輸入 crontab -r
1 進入編輯界面
crontab -e
2 添加任務
30 18 * * * /home/crontab/mongobk.sh
基本格式 :
* command
分 時 日 月 周 命令
第1列表示分鐘1~59 每分鐘用或者 /1表示
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標識號星期0~6(0表示星期天)
3 保存后對出,啟動欺負
service crond start
4 設置開機自啟動
chkconfig crond on
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。
新聞熱點
疑難解答