1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/bash

#########
#for bak up mysql databases
#by [email protected]
#version 1
#date 2019-12-24
#########

#parameter
Base_dir="/data/mysql_bak/"
Note_file=${Base_dir}notefile
Date=`date +%Y%m%d`
Bak_dir="${Base_dir}${Date}/"
Bak_suffix='_bak_v1.gz'
Bak_log=/tmp/${Date}_dbbak.log

#before
mkdir -p ${Bak_dir}

#bak
cat ${Note_file} | while read line
do
Db_user=`echo ${line} | awk '{print $1}'`
Db_pass=`echo ${line} | awk '{print $2}'`
Db_name=`echo ${line} | awk '{print $3}'`
mysqldump -u${Db_user} -p${Db_pass} -P3309 --opt --single-transaction -R ${Db_name} | gzip > ${Bak_dir}${Db_name}${Bak_suffix}
echo ${Bak_dir}${Db_name}${Bak_suffix} >> ${Bak_log}
done