Linux ubuntu MySQL 定时备份/手动备份/还原 测试教程

一 手动备份

先创建测试库  work10

如图 

 

  也可以在  本机的 navicat 直接操作   创建几张表

 准备完成  退出 MySQL  重新打开  控制台也可以

创建 一个 文件夹 用来 储存 备份 文件 和 备份语句

进入文件夹   创建一个  备份 语句文件   .sh  作为后缀

创建并打开 文件 后 按下 i  进入 写入  模式,否则无法写入

输入如下内容

rq=$(date +%Y_%m_%d_%H_%M)

mysqldump -uroop -p -d work10 > "/mysqlbak_test/sqlbak/sqlbak_$rq.sql"

按下  esc 退出 编辑模式  输入 :wq 保存并返回

 

此时 再 创建一个 文件夹 存 SQL的备份文件 

现在有一个 存 备份文件的 文件夹   和  一个 备份语句文件

输入 如下语句  手动执行 备份操作 输入 数据库密码

 为了便于观察   可以 在虚拟机上 打开 文件夹 查看

如下图    双击打开   计算机  

 

右键打开  文件夹

 

 此时  备份文件 已经生成

 

 测试 是否  备份成功  回到 主机  在  navicat里删除 表结构

 回到 Ubuntu  

先 显示一下 备份文件名  输入 如下代码  导入 数据库内容

sudo mysql -uroot -p work10 < "备份文件的完整路径" 

回到 navicat  此时  表结构 已经恢复   手动  备份 / 恢复 结束

二  定时任务备份

接着上文 

备份文件储存位置 

sudo mkdir /mysqlbak_test/sqlbak

新建一个 sql_time.sh

sudo vim /mysqlbak_test/sql_time.sh

进入后 输入 如下代码  

注意: 此时 mysqldump 直接跟着 数据库名 即可 待会修改一下 配置文件 会添加 地址,用户,密码

rq=$(date +%Y_%m_%d_%H_%M)

mysqldump work10 > "/mysqlbak_test/sqlbak/sqlbak_$rq.sql"

 按下  esc 退出 编辑模式  输入 :wq 保存并返回

修改 配置文件 添加 如下几行    每行直接回车  尽量不要 在后面出现空格

[client]

host=localhost

usrt=root

password='密码'

 

 保存返回  此时  可以手动 测试一下   备份脚本 是否 能正常执行

 

  可以之后 

配置定时任务 

先 编辑 crontab 文件

sudo vim /etc/crontab

在最下方 # 号内  添加 如下语句  每天  13点 15分 执行

15 13 * * * root /mysqlbak_test/sqlbak.sh

注意 前五个 位置的 意义  :分 时 天 月 周

接着 esc   :wq  保存 返回

给 备份语句脚本 文件 给与权限

sudo chmod +x 文件

之后 重启 crontab

/etc/init.d/cron restart

 

 等待定时 生成 备份文件  前面可以 把时间设置近一点  方便测试

定时的 13 点 15 的 备份生成 成功

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿online

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值