shell 脚本实现定时备份mysql数据库

  首先要知道直接在脚本中输入mysql的密码是不被允许的,但是我们可以曲线救国

  1. 在新建一个文件专门用来存储用户密码

  如: vim ./.mysql.conf

[mysqldump]
user=your_user
password=your_password

  2. 测试是否可以实现备份msyql

mysqldump --defaults-file="./.mysql.conf" -hlocalhost -P3306 --user=your_user --routines --default-character-set=utf8 --set-gtid-purged=OFF back_db> back_up.sql

  如果没有问题就说明我们的命令没有问题

  3. 编写定时脚本;

  vim ./dump.sh

while true 
do
time=`date +%H:%M:%S`
echo $d
src="/home/xiaoxin/dump"
mysqldump --defaults-file="$src/.mysql.conf" -hlocalhost -P3306 --user=your_user --routines --default-character-set=utf8 --set-gtid-purged=OFF test_db> $src/testdb-{$d}.sql
sleep 3600  #每一小时备份一次
done

  最后 source ./dump.sh 既可以执行脚本

原文地址:https://www.cnblogs.com/jiaxiaoxin/p/10743184.html