mariadb实现冷备份与恢复操作案例(物理冷备份,周期性备份)详解


前置环境

主机ip
mariadb1192.168.10.11
mariadb2192.168.10.12

mairadb1操作
安装mariadb

yum -y install mariadb-server

启动mariadb

systemctl start mariadb

这里只是演示备份与恢复,所以不需要进行初始化操作,直接进入数据库就好了

进入数据库,随便创建一些数据来验证结果即可

mysql
create database test;
use test;
create table users(name char(16),passwd char(48));
insert into users values('zhangsan','123'),('lisi','234');
quit

大体就是这样的
在这里插入图片描述

在这里插入图片描述

在mariadb2上也安装mariadb

yum -y install mariadb-server

一、物理冷备份

1.备份
systemctl stop mariadb
mkdir /backup
cd /var/lib/
tar zcf /backup/mysql_all_$(date +%F).tar.gz mysql/
ls

首先关闭mariadb
创建一个存放备份的文件夹,即/backup
更改目录到mariadb目录
打包即可

简单解释一下(date +%F)
动态获取日期,一般用在周期性脚本中使用。

ls /backup

在这里插入图片描述
把这个压缩文件传到mariadb2上

scp /backup/mysql_all_2024-09-26.tar.gz root@192.168.10.12:/
2.恢复

mariadb2操作
查看备份文件有没有传过来

ls /

在这里插入图片描述

systemctl stop mariadb
cd /var/lib/
mv mysql/  mysql.bak
tar xf /mysql_all_2024-09-26.tar.gz 
systemctl start mariadb

关闭mariadb
cd到mairadb目录
将原本的mysql目录改成.bak作为备份。
将备份文件解压到这里
启动mariadb

检查结果

进入mariadb

mysql

查看库表

show databases;

在这里插入图片描述

use test;
select * from users;

在这里插入图片描述

describe users;

在这里插入图片描述

此结果同样适用于数据库的恢复操作,并且可以直接传输至其他服务器,从而实现数据的有效转移。

补充: 周期性恢复操作

创建一个脚本

vim /root/backup.sh
#!/bin/bash
date=$(date +%F)
cd /var/lib/
tar zcf /backup/mysql_all_${date}.tar.gz mysql/

周期任务

crontab -e
0 2 * * *  /usr/bash /root/backup.sh

不用担心重名问题,是以当前日期命名的

`

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

爱吃龙利鱼

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

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

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

打赏作者

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

抵扣说明:

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

余额充值