温馨提示×

mongodb备份centos自动化脚本

小樊
54
2025-09-07 17:50:34
栏目: 云计算

在CentOS系统上,你可以使用mongodump工具来备份MongoDB数据库。以下是一个简单的自动化备份脚本示例,该脚本将每天凌晨2点自动备份MongoDB数据库,并将备份文件保存到指定的目录中。

  1. 首先,确保你已经安装了MongoDB,并且mongodump工具可用。你可以通过以下命令检查:
mongodump --version

如果未安装,请参考MongoDB官方文档进行安装:https://docs.mongodb.com/manual/installation/

  1. 创建一个备份脚本文件,例如/usr/local/bin/mongodb_backup.sh
#!/bin/bash

# 设置备份目录
BACKUP_DIR="/path/to/your/backup/directory"

# 设置MongoDB连接信息
MONGO_HOST="localhost"
MONGO_PORT="27017"
MONGO_USER="your_username"
MONGO_PASSWORD="your_password"
MONGO_DB="your_database"

# 设置备份文件名
DATE=$(date +"%Y%m%d%H%M%S")
BACKUP_FILE="$BACKUP_DIR/$MONGO_DB-$DATE.tar.gz"

# 创建备份目录(如果不存在)
mkdir -p "$BACKUP_DIR"

# 执行备份操作
mongodump --host $MONGO_HOST --port $MONGO_PORT --username $MONGO_USER --password $MONGO_PASSWORD --authenticationDatabase admin --db $MONGO_DB --out $BACKUP_DIR

# 压缩备份文件
tar -zcvf $BACKUP_FILE $BACKUP_DIR/$MONGO_DB

# 删除原始备份目录
rm -rf $BACKUP_DIR/$MONGO_DB

echo "Backup completed: $BACKUP_FILE"
  1. 为脚本添加执行权限:
chmod +x /usr/local/bin/mongodb_backup.sh
  1. 使用crontab设置定时任务。编辑当前用户的crontab文件:
crontab -e

在文件末尾添加以下行,以每天凌晨2点执行备份脚本:

0 2 * * * /usr/local/bin/mongodb_backup.sh

保存并退出编辑器。现在,你的MongoDB数据库将每天自动备份到指定的目录中。

注意:请确保将脚本中的/path/to/your/backup/directoryyour_usernameyour_passwordyour_database替换为实际的值。

0