mysql数据库定时备份
最近要用到mysql备份,就写了shell脚本用于备份。
#!/bin/bash #定义备份的数据库名称 database=*** #定义备份的时间 currTime=$(date +%Y%m%d) #备份存储目录 bakUrl=/opt/$database/db/$currTime #备份文件名 databaseBakName=$database.$currTime.sql #备份文件路径 databaseBakUrl=$bakUrl/$databaseBakName #判断备份的文件夹是否存在 #这里的-d 参数判断备份存储目录是否存在 if [ ! -d $bakUrl ]; then mkdir -p $bakUrl fi #这里的-f参数判断备份文件是否存在 if [ ! -f $databaseBakUrl ]; then mysqldump -u*** -hIP -p*** $database > $databaseBakUrl else rm -rf $databaseBakUrl mysqldump -u*** -hIP -p*** $database > $databaseBakUrl fi
给shell脚本命名为databasebak.sh
赋予脚本权限 chmod u+x databasebak.sh
添加计划任务
crontab -e
30 1 * * * sh /home/databasebak.sh &