用于生产环境的四个shell备份脚本,分别是批量备份多个数据库、备份网站目录、目录rsync同步、nginx日志切割。 生产环境中的备份shell脚本,共四个,供大家学习参考。 1,批量备份多个数据库
复制代码代码示例:
#!/bin/bash COPIES=10
MYSQLDUMP="mysqldump" umask 0077
test ! -d "$BACKUP_DIR" && mkdir -p "$BACKUP_DIR"
for dbname in $BACKUP_DBNAME find $BACKUP_DIR -type f -mtime +$COPIES -delete 2,网站目录备份
复制代码代码示例:
#!/bin/bash
test ! -d "$BACKUP_DIR" && mkdir -p "$BACKUP_DIR" umask 0077 tar -zcf $BACKUP_DIR/www.$TIMEPOINT.tar.gz $WEBSITE_DIR find $BACKUP_DIR -type f -mtime +$COPIES -delete 3,目录rsync同步(需先安装配置rsync)
复制代码代码示例:
#!/bin/sh
dstdir3=jszb@111.111.111.111::example1
rsync -avz --delete --progress --password-file=/backup/bash/rsync.pas $srcdir1 $dstdir3 & 4,nginx日志切割
复制代码代码示例:
#!/bin/bash
#edit www.jbxue.com logs_path="/usr/local/webserver/nginx/logs/" mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/ mv ${logs_path}access.log ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/access_$(date -d "yesterday" +"%Y%m%d").log kill -USR1 `cat /usr/local/webserver/nginx/nginx.pid` |