centos系统mysql数据库压缩备份与恢复


压缩备份

一、安装 xtrabackup

确保已经安装了 xtrabackup 工具。可以从 Percona 的官方网站 获取并安装适合你系统的版本。

# 添加 Percona 仓库
sudo yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm  
  
# 安装 Percona XtraBackup  
sudo yum install percona-xtrabackup-83 -y # 注意:版本号可能会变化
										  # 83版本工具只支持mysql80以上版本

二、数据库中创建一些数据

如果数据库中已有默认以外的数据,直接跳过

CREATE DATABASE IF NOT EXISTS test;		#创建一个名为test的数据库
USE test;								#使用数据库
#创建一个名为t1的表

CREATE TABLE IF NOT EXISTS t1 (  				
    id INT AUTO_INCREMENT PRIMARY KEY,  
    name VARCHAR(100) NOT NULL,  
    age INT  
);
#向t1表中插入一些数据

INSERT INTO t1 (name, age) VALUES ('Alice', 30);  
INSERT INTO t1 (name, age) VALUES ('Bob', 25);  
INSERT INTO t1 (name, age) VALUES ('Charlie', 35);


#查看表中所有记录
SELECT * FROM t1;

在这里插入图片描述

三、进行压缩备份

使用 xtrabackup 进行备份并同时压缩备份数据。可以通过以下命令将备份数据压缩到一个 .tar.gz 文件中:

xtrabackup \
--defaults-file=/etc/my.cnf \
--backup --compress \							#压缩
--target-dir=/data/backup/compressed/  \		#要备份到的目录
-uroot -p'你的密码' -H localhost -P 3306 \		#目标服务器的IP、端口号、用户名和密码
--no-server-version-check						#不检查服务版本

–compress:启用压缩。
–compress-threads=4:设置压缩的线程数,根据你的机器性能进行调整。
–compress-extensions=“mytable.frm”:指定要压缩的文件类型,可以根据需要调整。
–target-dir:指定备份数据存储的目录。

在这里插入图片描述

四、模拟数据丢失,删库

 systemctl stop mysqld			\\停止mysql数据库

 rm -rf /var/lib/mysql/*		\\删除mysql下的所有数据
  #这时mysql数据库已经登不上了

五、解压缩

解压缩需要有 qpress 命令,由于我建了yum库,可以直接通过yum安装

 yum  install qpress -y
#解压缩
xtrabackup \
--defaults-file=/etc/my.cnf \			
--decompress \							#解压缩
--target-dir=/data/backup/compressed/	#压缩备份目录

在这里插入图片描述

六、数据恢复

#准备要恢复的数据
 xtrabackup \
 --prepare \								#准备数据,命令将数据恢复到可用状态
 --target-dir=/data/backup/compressed \		#备份目录
 --no-server-version-check

在这里插入图片描述

#恢复数据
xtrabackup \
--defaults-file=/etc/my.cnf \
--copy-back \
--target-dir=/data/backup/compressed

在这里插入图片描述

#将恢复的数据给上mysql用户权限
chown -R mysql.mysql /var/lib/mysql
#重启mysql
 systemctl restart mysqld
#登录mysql
mysql -uroot -p'你的密码';
#查看所有数据库
show databases;

在这里插入图片描述

注意事项
备份和恢复过程中务必小心:操作前最好进行测试,确保操作过程不会影响生产环境。
定期检查备份文件:确保备份文件能够正确恢复,以便在需要时可以顺利恢复数据。
版本兼容:确保 xtrabackup 的版本与你的 MySQL 版本兼容,以避免潜在的兼容性问题。

回到顶层

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值