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

innobackupex 在增量的基础上增量备份

为什么80%的码农都做不了架构师?>>>   hot3.png

需求来源:

听说最近黑客比较猖狂,上司除了要求做好安全措施之外,要每天做数据库备份.

说到数据库备份,首先是全库备份一次,然后再做增量,因为我们公司资源有限

数据库磁盘空间不允许,在做完第一次增量备份后,就得把全备份文件删除.

头疼的是后面如何增量,所以就想试试在增量备份基础上增量备份.

 

准备工作

分别在主库和从库安装innobackupex工具:

[root@cm-vpn1 ~]#  rpm -ivh  http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm

[root@cm-vpn1 ~]#   yum install -y percona-xtrabackup

 

主库配置

[root@cm-vpn2 ~]# vim /etc/my.cnf
……
server-id=2
#自定义
log_bin=root-01

 

创建备份用户

mysql>  GRANT REPLICATION SLAVE ON *.* TO 'rpl'@'*' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.00 sec)

 

全量备份

[root@cm-vpn2 ~]# innobackupex --defaults-file=/etc/my.cnf --user=bakuser --password='123456' -S /tmp/mysql.sock /data/backup


[root@cm-vpn2 ~]# ls /data/backup/
2018-05-20_10-02-38

 

创建第一增量备份

[root@cm-vpn2 ~]# innobackupex --defaults-file=/etc/my.cnf  --user=root  --incremental-basedir=/data/backup/2018-05-20_10-02-38 -S /tmp/mysql.sock --incremental /data/backup/add/

[root@cm-vpn2 ~]# ls /data/backup/add
2018-05-21_03-40-57

 

创建第二次增量备份

说明:创建第二 次增量备份是第一次增量的基础上

[root@cm-vpn2 ~]# innobackupex --defaults-file=/etc/my.cnf  --user=root  --incremental-basedir=/data/backup/add/2018-05-21_03-40-57 -S /tmp/mysql.sock --incremental /data/backup/add/

[root@cm-vpn2 ~]# ls /data/backup/add
2018-05-21_03-40-57  2018-05-21_03-46-16

 

把在主库的增量备份和全量备份传输到从库

#全量
[root@cm-vpn2 ~]# ls /data/backup/
2018-05-20_10-02-38

#增量
[root@cm-vpn2 ~]# ls /data/backup/add
2018-05-21_03-40-57  2018-05-21_03-46-16

 

配置从库

[root@cm-vpn1 ~]# vim /etc/my.cnf


***********************
***********************
***********************

 basedir = /usr/local/mysql
 datadir = /data/mysql
 port = 3306
 server_id = 1
 socket = /tmp/mysql.sock

 

合并备份文件

[root@cm-vpn1 ~]# innobackupex --apply-log --redo-only /data/backup/2018-05-20_10-02-38

[root@cm-vpn1 ~]# innobackupex --apply-log --redo-only /data/backup/2018-05-20_10-02-38 --incremental-dir=/data/backup/add/2018-05-21_03-40-57

[root@cm-vpn1 ~]#innobackupex --apply-log --redo-only /data/backup/2018-05-20_10-02-38 --incremental-dir=/data/backup/add/2018-05-21_03-46-16

 

恢复

 [root@cm-vpn1 ~]# innobackupex --copy-back /data/backup/2018-05-20_10-02-38

 

设置mysql目录权限

[root@cm-vpn1 ~]# chown mysql:mysql /data/mysql -R

 

启动

[root@cm-vpn1 ~]# /etc/init.d/mysqld start
Starting MySQL.Logging to '/data/mysql/cm-vpn1.err'.
. SUCCESS! 

 

 

转载于:https://my.oschina.net/AnnaWu/blog/1813740

相关文章:

  • elasticsearch+logstash+kibana+redis
  • 有向无环图(DAG)的最小路径覆盖
  • winSCP:无权访问
  • VS Code 折腾记 - (13) VS Live Share (可提高效率的代码实时协作插件)的使用姿势
  • 百度Api完成在线地图定位显示
  • windows堆栈研究以及线程安全
  • 给nginx生成自签名证书
  • Python之合并PDF文件
  • git 常用命令说明
  • CSS3学习之background-origin和background-clip区别
  • Kuberbetes1.10 集群部署
  • Linux常用基本命令:uniq-去重复
  • ijkplayer视频播放
  • ⽹站部署到阿里服务器及域名配置流程
  • stun服务器搭建(coTurn)
  • python3.6+scrapy+mysql 爬虫实战
  • 【个人向】《HTTP图解》阅后小结
  • Android 控件背景颜色处理
  • Dubbo 整合 Pinpoint 做分布式服务请求跟踪
  • E-HPC支持多队列管理和自动伸缩
  • el-input获取焦点 input输入框为空时高亮 el-input值非法时
  • express如何解决request entity too large问题
  • Linux后台研发超实用命令总结
  • MySQL主从复制读写分离及奇怪的问题
  • Phpstorm怎样批量删除空行?
  • Sublime Text 2/3 绑定Eclipse快捷键
  • tensorflow学习笔记3——MNIST应用篇
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • vue-cli3搭建项目
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • 机器学习学习笔记一
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 手写双向链表LinkedList的几个常用功能
  • 通信类
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 我与Jetbrains的这些年
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • #1014 : Trie树
  • #13 yum、编译安装与sed命令的使用
  • (JS基础)String 类型
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (算法设计与分析)第一章算法概述-习题
  • (学习日记)2024.04.04:UCOSIII第三十二节:计数信号量实验
  • (转)ObjectiveC 深浅拷贝学习
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .form文件_一篇文章学会文件上传
  • .htaccess 强制https 单独排除某个目录
  • .NET程序员迈向卓越的必由之路
  • .net实现头像缩放截取功能 -----转载自accp教程网
  • @ConfigurationProperties注解对数据的自动封装
  • [ SNOI 2013 ] Quare
  • [Android Studio 权威教程]断点调试和高级调试