继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

生产环境备份shell脚本

largeQ
关注TA
已关注
手记 987
粉丝 92
获赞 585

批量备份多个数据库

#!/bin/bash

BACKUP_HOST="localhost"

BACKUP_USER="root"

BACKUP_PASS="123456"

BACKUP_DIR="/backup/mysql"

BACKUP_DBNAME="one two three"

COPIES=10

MYSQLDUMP="mysqldump"

TIMEPOINT=$(date +%Y-%m-%d)

MYSQLDUMP_OPTS="-h $BACKUP_HOST -u$BACKUP_USER -p$BACKUP_PASS"

umask 0077

test ! -d "$BACKUP_DIR" && mkdir -p "$BACKUP_DIR"

test ! -w $BACKUP_DIR && echo "Error: $BACKUP_DIR is un-writeable." && exit 0

for dbname in $BACKUP_DBNAME

do

   test ! -d "$BACKUP_DIR/$dbname" && mkdir -p "$BACKUP_DIR/$dbname"

   $MYSQLDUMP $MYSQLDUMP_OPTS $dbname | gzip > $BACKUP_DIR/$dbname/$dbname.$TIMEPOINT.sql.gz

done

find $BACKUP_DIR -type f -mtime +$COPIES -delete

网站目录备份

#!/bin/bash

BACKUP_DIR=/backup/website

WEBSITE_DIR=/www

TIMEPOINT=$(date +%Y-%m-%d)

COPIES=10

test ! -d "$BACKUP_DIR" && mkdir -p "$BACKUP_DIR"

test ! -w $BACKUP_DIR && echo "Error: $BACKUP_DIR is un-writeable." && exit 0

umask 0077

tar -zcf $BACKUP_DIR/www.$TIMEPOINT.tar.gz $WEBSITE_DIR

find $BACKUP_DIR -type f -mtime +$COPIES -delete

目录rsync同步(需先安装配置rsync)

#!/bin/sh

srcdir1=/www/example1.com

srcdir2=/www/example2.com

dstdir3=jszb@111.111.111.111::example1

dstdir4=jszb@222.222.222.222::example2

rsync -avz --delete --progress --password-file=/backup/bash/rsync.pas $srcdir1 $dstdir3 &

rsync -avz --delete --progress --password-file=/backup/bash/rsync.pas $srcdir2 $dstdir4 &

nginx日志切割

#!/bin/bash

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`

©著作权归作者所有:来自51CTO博客作者amwytai的原创作品,如需转载,请注明出处,否则将追究法律责任

生产环境备份shell脚本shell


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP