irpas技术客

linux mysql本地定时备份_冯斯托罗_mysql定时备份到本地

未知 7779

1.首先登陆mysql服务器

2.cd 备份目录(cd /home/admin/mysqlback)

3.创建执行备份脚本,下列是脚本内容? vi back.sh

#数据库账号

database_username="root"

# 数据库密码 database_password="XXXX"

# 需要备份的数据库名称 database_name="test"

# 数据库备份文件路径 backup_dir="/home/admin/mysqlback"

# 数据库备份开始时间 start_date_time=`date +'%Y-%m-%d %H:%M:%S'`

# 打印数据库备份开始标识 echo "备份开始于:" $start_date_time >> $backup_dir/logs/$database_name"_backup.log"

# 执行数据库备份命令 mysqldump -u$database_username -p$database_password $database_name ?> $backup_dir/$database_name/$database_name"_"`date +'%Y%m%d%H%M%S'`".sql"

# 数据库备份结束时间 end_date_time=`date +'%Y-%m-%d %H:%M:%S'`

# 计算备份所需时间 start_seconds=$(date --date="$start_date_time" +%s); end_seconds=$(date --date="$end_date_time" +%s);

# 打印备份所需时间 echo "本次备份运行时间: "$((end_seconds-start_seconds))"s" >> $backup_dir/logs/$database_name"_backup.log"

# 打印数据库备份结束标识 echo "备份结束于:" $end_date_time >> $backup_dir/logs/$database_name"_backup.log"

#删除30天之前的备份 log3=$(date -d "30 day ago" +%Y%m%d) rm $backup_dir/$database_name/$database_name"_"$log3* -rf

4.创建备份的目录 及日志目录和文件

备份目录数据库名,脚本有指出? mkdir test

创建日志目录? ? ?mkdir logs

创建日志文件? ? ?touch logs/test_backup.log

5.执行脚本 back.sh? ??

sh back.sh

6.脚本没有问题后,开始书写定时任务? 这里用的cron

命令 :crontab -e

输入 i

设定每天凌晨1点执行

拷贝:0 1 ?* * *?/home/admin/mysqlback/back.sh

esc? :wq?

保存即可

7.修改脚本可执行权限

chmod +x back.sh

备注:很简单,大家可以直接拿来就用


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #mysql定时备份到本地 #Linux #MySQL #本地备份