week.sh:
#!/bin/bash
set -o nounset
#set -o errexit
Server_id=b
# 备份文件要保存的目录
basepath='/data/site/htmltoo.file/tools/backup/'
if [ ! -d "$basepath" ]; then
mkdir -p "$basepath"
fi
#删除本地3天前的数据
find "$basepath" -mtime +3 -type f -name "*.tar.bz2" -exec rm -rf {} \;
#备份service
#cp -a: 会保留原有数据的时间戳等信息
#cp -r: 使用新的时间戳等信息
#cp -f: 没有强制覆盖提醒
cp -af /var/spool/cron/root /data/site/shell/crontab
#修改权限
chmod -R 777 /data/site;
chown -R admin.admin /data/site;
echo /dev/null > /data/file/logs/tar/week.log
sleep 10;
#备份数据库
echo "******";
echo "all-databases start!";
echo $(date);
#docker exec mariadb sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD" --ignore-table=information_schema.* --ignore-table=performance_schema.* --ignore-table=mysql.* ' > "$basepath""$Server_id"-sql-$(date +%Y%m%d).tar.bz2;
docker exec mariadb sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD" --ignore-table=information_schema.* --ignore-table=performance_schema.* --ignore-table=mysql.* ' --single-transaction --set-gtid-purged=OFF --master-data=2 --triggers --events --routines > "$basepath""$Server_id"-sql-$(date +%Y%m%d).tar.bz2;
docker exec mariadblabs sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD" --ignore-table=information_schema.* --ignore-table=performance_schema.* --ignore-table=mysql.* ' --single-transaction --set-gtid-purged=OFF --master-data=2 --triggers --events --routines > "$basepath"labs-sql-$(date +%Y%m%d).tar.bz2;
#mysqldump -uihunter -pwdqdmm@m -hh.htmltoo.com -P3306 --all-databases --ignore-table=information_schema.* --ignore-table=performance_schema.* --ignore-table=mysql.* --single-transaction --set-gtid-purged=OFF --master-data=2 --triggers --events --routines > "$basepath"h-sql-$(date +%Y%m%d).tar.bz2;
echo $(date);
echo "all-databases end!";
echo "******";
sleep 10;
echo "******";
echo "one-databases start!";
echo $(date);
# 要备份的数据库名,多个数据库用空格分开
databases=(dbecdoo dbeduboo dbhaothe dbkufind)
# 循环databases数组
for db in ${databases[*]}
do
# 备份数据库生成SQL文件
/bin/nice -n 19 mysqldump -uroot -pwdqdmm@r -h127.0.0.1 -P3360 $db > "$basepath""$Server_id"-sql-$db-$(date +%Y%m%d).tar.bz2;
done
echo $(date);
echo "one-databases end!";
echo "******";
sleep 10;
#备份网站
echo "******";
echo "docker_tar start!";
echo $(date);
tar -jcvPf /data/site/htmltoo.file/tools/backup/$Server_id-docker-$(date +%Y%m%d).tar.bz2 /data/docker;
echo $(date);
echo "docker_tar end!"
echo "******";
#tar -jcvPf /data/site/ssh.domsn.com/tools/bak/nginx-conf-$(date +%Y%m%d).tar.bz2 /www/server/panel/vhost/nginx;
#tar -jcvPf /data/site/htmltoo.file/tools/backup/$Server_id-site-$(date +%Y%m%d).tar.bz2 --exclude-from=/data/site/shell/site_tar_exclude.list /data/site;
sleep 10;
echo "******";
echo "site_tar start!";
echo $(date);
cd /data/site/;
tar -cP * --exclude-from=shell/site_tar_exclude.list | pbzip2 -c -k -q -f > htmltoo.file/tools/backup/$Server_id-site-$(date +%Y%m%d).tar.bz2;
echo $(date);
echo "site_tar end!";
echo "******";
sleep 10;
#远程下载
echo "******";
echo "mwget start!";
echo $(date);
mwget -n 20 -d /data/site/htmltoo.file/tools/backup https://h.htmltoo.com/backup/h-nginx-$(date +%Y%m%d).tar.bz2;
mwget -n 20 -d /data/site/htmltoo.file/tools/backup https://h.htmltoo.com/backup/h-site-$(date +%Y%m%d).tar.bz2;
mwget -n 20 -d /data/site/htmltoo.file/tools/backup https://h.htmltoo.com/backup/h-sql-$(date +%Y%m%d).tar.bz2;
echo $(date);
echo "mwget end!"
echo "******";
#修改权限
chmod -R 777 /data/site;
chown -R admin.admin /data/site;
sleep 10;
#清理
rm -rf /var/log/boot.log-* /var/log/btmp-* /var/log/cron-* /var/log/maillog-* /var/log/messages-* /var/log/secure-* /var/log/spooler-* /var/log/audit/audit.log.* /var/log/dmesg.*
签名:这个人很懒,什么也没有留下!