shell 备份mysql和mongo数据库

本文介绍了一个用于定期备份MySQL和MongoDB数据库的Shell脚本。该脚本包括设置数据库用户名、密码、备份目录及权限,并使用mysqldump和mongodump工具进行数据导出,同时自动清理超过两天的旧备份。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#!/bin/sh  
DB_USER="xxxxx"  #数据库用户名
DB_PASS="xxxxx"  #数据库密码   
# Others vars  

DATE=`date +%Y-%m-%d`   #时间年月日

BCK_DIR="/home/mysqlbackup/dev"  #备份的目录
BCK_DIRA="/home/mysqlbackup/ga"  #备份的目录

BCK_DIRB="/home/mysqlbackup/ad"  #备份的目录

chmod -R 777 $BCK_DIR/    #目录设置权限
chmod -R 777 $BCK_DIRA/  #目录设置权限
chmod -R 777 $BCK_DIRB/  #目录设置权限
# TODO  开始备份mysql数据
/usr/bin/mysqldump --defaults-extra-file=/usr/my.cnf --default-character-set=utf8 equire > $BCK_DIR/equire_$DATE.sql 
/usr/bin/mysqldump --defaults-extra-file=/usr/my.cnf --default-character-set=utf8 new3 > $BCK_DIRA/new3_$DATE.sql 
/usr/bin/mysqldump   --defaults-extra-file=/usr/my.cnf --default-character-set=utf8 wifi > $BCK_DIRB/wifi_$DATE.sql
#删除两天前备份的文件
find $BCK_DIR/ -name "*.sql" -type f -mtime +2 -exec rm  {} \; > /dev/null 2>&1
find $BCK_DIRA/ -name "*.sql" -type f -mtime +2 -exec rm  {} \; > /dev/null 2>&1
find $BCK_DIRB/ -name "*.sql" -type f -mtime +2 -exec rm  {} \; > /dev/null 2>&1
#备份mongo的数据
DATE1=`date '+%Y%m%d%H%M%S' `

mongo_dir="/home/mongobakup"

if [ ! -d "$mongo_dir/$DATE1" ]; then
  mkdir $mongo_dir/$DATE1
fi
mongodump -d audit -o $mongo_dir/$DATE1

find $mongo_dir/  . -type d -mtime +2 -print | xargs rm -rf 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值