mongodb数据库备份
#!/bin/bash ## ## MongoDB Database Backup Script ## export PATH=/bin:/usr/bin:/usr/local/bin TODAY=`date +"%Y_%m_%d"` DB_BACKUP_PATH='' MONGO_HOST='' MONGO_PORT='' # If mongodb is protected with username password. # Set AUTH_ENABLED to 1 # and add MONGO_USER and MONGO_PASSWD values correctly AUTH_ENABLED=1 MONGO_USER='' MONGO_PASSWD='' # Set DATABASE_NAMES to "ALL" to backup all databases. # or specify databases names seprated with space to backup # specific databases only. DATABASE_NAMES='ALL' #DATABASE_NAMES='mydb db2 newdb' ## Number of days to keep local backup copy BACKUP_RETAIN_DAYS=30 mkdir -p ${DB_BACKUP_PATH}/${TODAY} AUTH_PARAM="" if [ ${AUTH_ENABLED} -eq 1 ]; then AUTH_PARAM=" --username ${MONGO_USER} --password ${MONGO_PASSWD} " fi if [ ${DATABASE_NAMES} = "ALL" ]; then echo "You have choose to backup all databases" mongodump --host ${MONGO_HOST} --port ${MONGO_PORT} ${AUTH_PARAM} --out ${DB_BACKUP_PATH}/${TODAY}/ else echo "Running backup for selected databases" for DB_NAME in ${DATABASE_NAMES} do mongodump --host ${MONGO_HOST} --port ${MONGO_PORT} --db ${DB_NAME} ${AUTH_PARAM} --out ${DB_BACKUP_PATH}/${TODAY}/ done fi ## Remove backups older than {BACKUP_RETAIN_DAYS} days ## DBDELDATE=`date +"%Y_%m_%d" --date="${BACKUP_RETAIN_DAYS} days ago"` if [ ! -z ${DB_BACKUP_PATH} ];then cd ${DB_BACKUP_PATH} if [ ! -z ${DBDELDATE} ] && [ -d ${DBDELDATE} ];then rm -rf ${DBDELDATE} fi fi
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!