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 既可以执行脚本