1.自动检测mysql主从 有没有配置成功
#!/bin/bash check(){ list=($(mysql -e "show slave statusG;" 2>/dev/null |egrep "Running|Behind" |head -n3|awk -F ':' '{print $2}')) #echo ${list[@]} if [ ${list[0]} = "Yes" -a ${list[1]} = "Yes" -a ${list[2]} -lt 120 ]; then echo '${list[0]}' "is ${list[0]}" echo '${list[1]}' "is ${list[1]}" echo '${list[2]}' "is ${list[2]}" echo "mysql slave is ok!" else #echo "" mail -s "mysql slave is not ok" hehe@163.com fi } while : do check sleep 3 done
2.数据库备份
#!/bin/bash for dbname in `mysql -e "show databases" 2>/dev/null | egrep -v "Database|schema"` do echo $dbname #分库备份 mysqldump --databases $dbname > /tmp/$dbname.sql #分表备份 mysql -e "show tables from $dbname;" 2>/dev/null |sed '1d' >> /tmp/tables.txt while read table do echo $table mysqldump $dbname $table >/tmp/$dbname_$table.sql done < /tmp/tables.txt done