banner
小鱼

小鱼's Blog

MongoDB 備份


image

# 安裝 MongoDump#

新版本的 MongoDB 已經不包含 mongodump 備份工具了

需要自己手動下載

首先到官網中,選擇對應版本的 MongoDB Command Line Database Tools

Download MongoDB Command Line Database Tools | MongoDB


image

點擊 copy link 複製下載鏈接

接著到伺服器中安裝壓縮包

wget https://fastdl.mongodb.org/tools/db/mongodb-database-tools-ubuntu2004-x86_64-100.7.4.tgz

並解壓縮

tar -zxvf mongodb-database-tools-ubuntu2004-x86_64-100.7.4.tgz

重命名為 mongodb-database-tools

mv mongodb-database-tools-ubuntu2004-x86_64-100.7.4 mongodb-database-tools

接著進入 mongodb-database-tools/bin 目錄下

將 mongodump 文件移動到 mongodb 所在的 bin 目錄

mv mongodump /usr/local/mongodb/bin/

# 備份#

現在就可以使用 mongodump 進行備份操作

例如

mongodump --uri="mongodb://root:root@localhost:27017/XXX"

就會在當前的目錄下生成一個 dump 目錄,裡面就是 XXX 這個 collection 的備份文件

# 定時備份#

## 編輯執行腳本#

將備份的命令編輯成 sh 文件,例如 command.sh

#!/bin/bash

#獲取當前時間
current_time=$(date +"%Y%m%d%H%M%S")

mongodump --uri="mongodb://XXX:[email protected]:27017/XXX"
mongodump --uri="mongodb://XXX:[email protected]:27017/XXX"
mongodump --uri="mongodb://XXX:[email protected]:27017/XXX"

#重命名文件
mv dump dump_$current_time

並且授予可執行權限

chmod +x ./command.sh

## 定時備份#

使用 crontab 進行定時執行

crontab -e

在文件中添加

# 每天凌晨3點執行備份mongodb腳本
0 3 * * * /home/mongodbDump/command.sh

查看當前用戶所有定時任務可以通過

crontab -l
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。