当前位置: 首页 > news >正文

xtrabackup备份

安装:

https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-30/binary/tarball/percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17.tar.gz?_gl=1*1ud2oby*_gcl_au*MTMyODM4NTk1NS4xNzM3MjUwNjQ2https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-30/binary/tarball/percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17.tar.gz?_gl=1*1ud2oby*_gcl_au*MTMyODM4NTk1NS4xNzM3MjUwNjQ2

[root@openEuler-2 ~]# tar xf percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17.tar.gz
[root@openEuler-2 ~]# ln -sv /root/percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17/bin/xtrabackup /usr/bin/xtrabackup

素材准备:

# 创建用户并授权
CREATE USER 'bkpuser'@'%'IDENTIFIED with mysql_native_password  BY 'Bak@123.com';
GRANT BACKUP_ADMIN, PROCESS, RELOAD, LOCK TABLES, REPLICATION CLIENT ON *.* TO 'bkpuser'@'%';
GRANT SELECT ON performance_schema.log_status TO 'bkpuser'@'%';
GRANT SELECT ON performance_schema.keyring_component_status TO bkpuser@'%';
GRANT SELECT ON performance_schema.replication_group_members TO bkpuser@'%';
FLUSH PRIVILEGES;

# 创建数据库
 CREATE TABLE `Student` (
   `Sno` int(10) NOT NULL COMMENT '学号',  `Sname` varchar(16) NOT NULL COMMENT '姓名',
   `Ssex` char(2) NOT NULL COMMENT '性别',  `Sage` tinyint(2) NOT NULL DEFAULT '0' COMMENT '学生年龄',
   `Sdept` varchar(16) DEFAULT 'NULL' COMMENT '学生所在系别',  PRIMARY KEY (`Sno`)
 ) ;
 
# 插入数据
INSERT INTO `Student` VALUES (1, '陆亚', '男', 24, '计算机网络'),(2, 'tom', '男', 26, '英语'),(3, '张阳', '男', 21, '物流管理'), (4, 'alex', '女', 22, '电子商务');

3、完全备份

[root@openEuler-2 ~]# mkdir /mysqlbak                # 创建备份存储目录

[root@openEuler-2 ~]# /usr/bin/xtrabackup --backup --target-dir=/mysqlbak/backups/ -u bkpuser -p'Bak@123.com'

# 需要指定mysql.sock路径

4、增量备份:

# 第一次增量备份素材:
mysql> insert into Student values(5,'guqinghan','女',20,'语文');
# 第一次增量备份:
[root@openEuler-2 ~]# /usr/bin/xtrabackup --backup --target-dir=/mysqlbak/incr1/ -u bkpuser -p'Bak@123.com' --incremental-basedir=/mysqlbak/backups/ -S /var/lib/mysql/mysql.sock
 

第二次增量备份素材:

mysql> insert into Student values(6,'ninghonye','女',20,'数学');
第二次增量备份:
[root@openEuler-2 ~]# /usr/bin/xtrabackup --backup --target-dir=/mysqlbak/incr2/ -u bkpuser -p'Bak@123.com' --incremental-basedir=/mysqlbak/incr1/ -S /var/lib/mysql/mysql.sock

5、还原

 # 模拟数据库破坏

准备完全备份
# xtrabackup --prepare --apply-log-only --target-dir=/mysqlbak/backups/ 
            
应用第一次增量备份到完全备份
# xtrabackup --prepare --apply-log-only --target-dir=/mysqlbak/backups/ --incremental-dir=/mysqlbak/incr1/

应用第二次增量备份到完全备份
# xtrabackup --prepare --apply-log-only --target-dir=/mysqlbak/backups/ --incremental-dir=/mysqlbak/incr2/


最后执行:
xtrabackup --prepare --target-dir=/mysqlbak/backups/
[root@openEuler-2 ~]# systemctl stop mysqld
[root@openEuler-2 ~]# rm -rf /var/lib/mysql/*                # 不删除会导致无法还原数据文件
[root@openEuler-2 ~]# xtrabackup --copy-back --target-dir=/mysqlbak/backups/

[root@openEuler-2 ~]# chown -R mysql:mysql /var/lib/mysql
[root@openEuler-2 ~]# systemctl start mysqld

相关文章:

  • SpringQuartz集群支持:JDBC存储与分布式执行
  • Blender 转 STL 文件全攻略:从基础到进阶
  • 大语言模型:在共识与创造之间的技术困局与破局探索
  • Python 实现的运筹优化系统数学建模详解(最大最小化模型)
  • 如何使用 qrcode.react生成二维码
  • VBA知识学习
  • Stable Diffusion 四重调参优化——项目学习记录
  • 人工智能应用工程师:开启智能时代的金钥匙
  • VM——相机拍照失败
  • 数据库架构全解析:MyCat、MHA、ProxySQL 的原理、功能与实例
  • 解决OBS里的鼠标太小|OBS鼠标尺寸问题
  • 什么是模型驱动开发MDD?有哪些应用场景?
  • 【科学技术部政务服务平台-用户注册/登录安全分析报告】
  • 【面试】什么是回流和重绘
  • YOLO半自动标注技术助力铁路检测,人工标注时间骤降80%!
  • 换电脑ip是换动态还是静态的?全面分析与操作指南‌
  • JavaScript对象的方法
  • Ansys Electronics 变压器 ACT
  • Android Telephony 464XLAT功能代码和日志分析
  • linux上anaconda安装、卸载、及不同用户共享同个anaconda的操作
  • 网站标题做参数/sq网站推广
  • 自己网站联系电话修改怎么做/电商培训机构靠谱吗
  • 建设公司企业使命/北京seo管理
  • 公司网站建设的建议/广告主资源哪里找
  • 网站建设 青少年宫/如何制作一个公司网站
  • 网站底部版权信息字体颜色/营销型网站建设团队