mysql定时自动备份数据库

版权声明:转载请标明出处,谢谢 https://blog.csdn.net/u012750106/article/details/82221866

我们都知道数据是无价,如果不对数据进行备份,相当是让数据在裸跑,一旦服务器出问题,只有哭的份了。下面将介绍mysql数据库的自动备份,大家可根据情况自行选择将备份数据存放在哪里。

第一种,数据跑在服务器上,如果只想定时把数据库备份放在服务器(此处服务器系统为centos7)上,可如下设置:

首先编写sh文件 : /usr/local/backup/bkDatabase.sh:

#!/bin/bash

mysqldump -uusername -ppassword DatabaseName | gzip > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz

添加权限: chmod u+x bkDatabase.sh

测试执行一下是否成功 ./bkDatabase.sh

系统添加定时任务

执行命令 crontab -e

编辑内容添加,示例为每天23:00定时执行脚本文件进行备份:

00 23 * * * /usr/local/backup/bkDatabaseName.sh

查看定时任务是否生效: crontab -l

重启crontab服务:service crond restart

第二种,就是自动定时备份远程服务器的mysql数据库并存储在本地(本地操作系统为window7)上,这种方法比较安全,所以推荐。

首先编写backup.bat文件。

@echo off
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
md D:\mysite-backup\%Ymd%\
C:\"Program Files"\"mysql-server 5.7.14"\bin\mysqldump --opt  -hx.x.x.x database > D:\database-backup\%Ymd%\database_%Ymd%.sql
echo "数据库备份完毕"

然后修改my.ini文件添加以下内容,并重启mysql服务。

[mysqldump]
user=root
password=xyq

点击backup.bat测试一下是否成功生成备份文件。

本地创建定时任务,实现定是备份远程数据库

1、打开 控制面板 > 管理工具 > 任务计划程序,创建任务:
这里写图片描述
2、填写触发器,设定执行时间:
这里写图片描述
3、添加执行脚本文件:
这里写图片描述

至此大功告成, 此时系统将会在指定时间会定时备份远程服务器端的mysql数据库。

(更多技术文章请访问我的个人博客:http://www.xyqblog.cn/

猜你喜欢

转载自blog.csdn.net/u012750106/article/details/82221866