在CentOS系统上备份和恢复MongoDB数据库可以通过以下步骤完成:
备份流程安装MongoDB(如果尚未安装):
添加MongoDB官方仓库:sudo tee /etc/yum.repos.d/mongodb-org.repo <<EOF[mongodb-org-4.4]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/4.4/x86_64/gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-4.4.ascEOF
安装MongoDB:sudo yum install -y mongodb-org
启动MongoDB服务:sudo systemctl start mongod
设置MongoDB开机自启动:sudo systemctl enable mongod
使用mongodump
进行备份:
mongodump --out /path/to/backup/directory
备份特定数据库:mongodump --db your_database_name --out /path/to/backup/directory
备份特定集合:mongodump --db your_database_name --collection your_collection_name --out /path/to/backup/directory
压缩备份文件以节省存储空间:tar -czvf /backup/mongodb_backup.tar.gz /backup/mongodb
定期备份:
使用crontab
设置定时任务,例如每天凌晨2点进行备份:0 2 * * * /usr/bin/mongodump --out /backup/mongodb_backup_$(date +\%Y\%m\%d)
恢复整个数据库:
mongorestore /path/to/backup/directory
恢复特定数据库:
mongorestore --db your_database_name /path/to/backup/directory/your_database_name
恢复特定集合:
mongorestore --db your_database_name --collection your_collection_name /path/to/backup/directory/your_database_name/your_collection_name.bson
恢复指定时间点:
如果需要恢复到备份时的特定时间点,可以使用--oplogReplay
选项:mongorestore --oplogReplay /path/to/backup/directory
通过以上步骤,你可以在CentOS上实现MongoDB的数据备份和恢复。