week.sh - 20210828 shell


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.*


签名:这个人很懒,什么也没有留下!
最新回复 (0)
返回