欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mysql定时自动备份数据库

程序员文章站 2024-03-21 09:20:28
...

我们都知道数据是无价,如果不对数据进行备份,相当是让数据在裸跑,一旦服务器出问题,只有哭的份了。下面将介绍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、打开 控制面板 > 管理工具 > 任务计划程序,创建任务:
mysql定时自动备份数据库
2、填写触发器,设定执行时间:
mysql定时自动备份数据库
3、添加执行脚本文件:
mysql定时自动备份数据库

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

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

相关标签: mysql 备份