mysql数据的备份

拥有回忆 提交于 2019-12-03 15:05:13

一、备份方式

1、备份:逻辑备份(mysqldump,mydumper)、物理备份(xtrabackup、tar、cp、rsync)    2、冗余:主备模式、数据库集群

二、备份对象

1、数据(库、表)  2、日志文件

三、物理备份(适合大型数据库,不受引擎的限制)实验用的是mariadb,步骤按mysql来

1、percona-xtrabackup 物理备份 + binlog

1.1下载软件包(超级慢 http://www.percona.com/software/percona-xtrabackup/ )

#wget http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm(下载YUM源)

#yum -y install percona-release-0.1-3.noarch.rpm(安装yum源)

#yum -y install percona-xtrabackup-24.x86_64 (安装percona)

注意:需要进入仓库把gpgcheck改为0

#vim percona-release.repo

# rpm -q  percona-xtrabackup-24  (查看版本)
percona-xtrabackup-24-2.4.16-1.el7.x86_64

1.2备份流程

>grant all privileges on  *.* to 'root'@'localhost' identified by '密码';(授权自己定义)

# innobackupex --user=root --password='5740##' /xtrabackup/full 

 

[root@localhost ~]# cd /xtrabackup/full/ (备份目录)
[root@localhost full]# ls
2019-11-05_06-38-48

#cat /xtrabackup/full/2017-08-01_00-00-18/xtrabackup_binlog_info  (二进制日志文件)

1.3恢复流程

#systemctl stop mysqld

 

#innobackupex --apply-log /xtrabackup/full/2017-08-01_00-00-18/ (生成回滚日志)

# innobackupex --copy-back /xtrabackup/full/2017-08-01_00-00-18/  (恢复文件)

 

1.4增量备份(差异备份及其恢复大致一样)

innobackupex --user=root --password='密码'   --incremental /xtrabackup/   --incremental-basedir=/xtrabackup/2017-09-01_00-00-04(basedir基于周一的备份。
会生成一个今天的。)

2、tar备份数据库(物理备份)

2.1备份

# systemctl stop  mariadb

#  tar -cf /backup/`date +%F`-mariadb-all.tar  /var/lib/mysql (备份成功)

 

 2.2恢复

# rm -rf /var/lib/mysql/*

# tar -xf /backup/2016-12-07-mysql-all.tar  -C / (-C / 会让tar包恢复到原来的路径)

# systemctl start mariadb
3、Lvm快照实现物理备份 + binlog(物理备份))

 

 四、逻辑备份

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!