#!/bin/bash
echo "start backup mysql..."
tmp_path="/tmp/"
file_path="/home/mixislink/data_backup/mysql/"
file_name_base="mysql_"
file_name="${file_name_base}$(date +%Y%m%d_%H%M%S)"
# 备份mysql的数据至106,并删除大于60天的数据
mkdir -p ${file_path}
docker exec mysql8 mysqldump -h192.168.1.120 --port=3306 -uroot -pxxx energy-digital> ${tmp_path}${file_name}.sql
if [ -f "${tmp_path}${file_name}.sql" ]; then
tar -czvf ${file_path}${file_name}.tar.gz ${tmp_path}${file_name}.sql
rm ${tmp_path}${file_name}.sql
fi
find ${file_path} -type f -mtime +30 -name "${file_name_base}*.tar.gz" | xargs rm -rvf
scp -C "${file_path}${file_name}.tar.gz" root@192.168.1.106:/home/"${file_name}.tar.gz"
#ssh root@192.168.1.106 "find /home/mysql_data_backup/ -type f -mtime +60 -name '${file_name_base}*.tar.gz' | xargs rm -rvf"
# 备份mongodb的数据至106,并删除大于30天的数据
echo "start backup mongodb..."
tmp_path="/tmp/"
file_path="/home/mixislink/data_backup/mongo/"
file_name_base="mongo_"
file_name="${file_name_base}$(date +%Y%m%d_%H%M%S)"
mkdir -p ${file_path}
docker exec mongo mongodump -h 192.168.1.120:27017 -uh2Admin -pxxx --authenticationDatabase h2_energy_digital -d h2_energy_digital -o ${tmp_path}${file_name}
docker exec mongo tar -czvf ${tmp_path}${file_name}.tar.gz ${tmp_path}${file_name}
docker exec mongo rm -rf ${tmp_path}${file_name}
docker cp mongo:${tmp_path}${file_name}.tar.gz ${file_path}${file_name}.tar.gz
find ${file_path} -type f -mtime +30 -name "${file_name_base}*.tar.gz" | xargs rm -rvf
scp -C "${file_path}${file_name}.tar.gz" root@192.168.1.106:/home/"${file_name}.tar.gz"
ssh root@192.168.1.106 "find /home/ -type f -mtime +30 -name '${file_name_base}*.tar.gz' | xargs rm -rvf"