Linux 进攻之路

MySQL 热备份之xtrabackup

2021-12-31  本文已影响0人  AllenWGZ
前言:

对于公司企业来说,数据丢失极有可能造成毁灭性的伤害,所以数据备份保存并且能够随时能进行恢复使用,对企业来说非常非常重要!

问题一:我们为什么需要备份 ?

因为服务器运行过程中,有可能出现硬件故障、遭受恶意攻击、数据库程序奔溃、自然灾害、人工操作失误造成误删数据,在这几项中最容易的是人工操作失误进行删除数据

问题二:我们该采用哪种备份方式 ?

一般情况有物理备份、逻辑备份等,并且相对备份数据量还可以分为完全备份和部分备份。下面简单解释一下

问题三:备份时候考虑问题 ?

一般情况企业的业务是无间断地提供服务,就是你进行备份时候也不能进行暂停业务让你进行备份,并且备份时候服务器的负载、IO问题,进行成功备份以后假如需要进行恢复数据,多快能够进行快速恢复。

我们选用哪种备份 ?

这次我们讨论的是如何进行热备份,一般在生产环境之中,使用的是 全量备份+增量备份+binlog 形式,我们选择使用的工具是xtrabackup,是percona公司开发的mysql开源热备份工具

下面是如何在CentOS 7 下进行备份的具体步骤:

yum install perl-DBI  perl-DBD-MySQL  perl-Time-HiRes perl-IO-Socket-SSL installperl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQL
image.png

然后进行安装xtrabackup

yum install  percona-xtrabackup-24-2.4.8-1.el7.x86_64.rpm
image.png
    GRANT RELOAD,LOCKTABLES,REPLOCATION CLIENT,CREATE TABLESPACE,SUPER ON *.* TO ‘USER_NAME’@’HOSTNAME/IP’ IDENTIFIED BY ‘Your_PASSWORD’ ;

备注:

USER_NAME 换成你要创建用户的用户名
HOSTNAME/IP 换成授权登陆的主机名或ip
YOUR_PASSWORD 换成你的密码
RELOAD 和 LOCKTABLES 权限为了执行 FLUSHTABLES WITH READ LOCK
REPLICATION CLIENT 为了获取binary log位置
CREATE TABLESPACE 权限为了导入表,用户表级别的恢复
SUPER权限在slave环境下备份用来启动和关闭slave线程

innobackupex [--defaults-file=/etc/my.cnf] --user=USERNAME --password=PASSWORD --port=3306 /data/backup/full --slave-info --safe-slave-backup --parallel=4 --safe-slave-backup-timeout=7200  --rsync 

--rsync 这个参数一般用作分布式数据库集群时候使用
--slave-info 会记录binlog的位置和文件名字,可以用作主从复制时候

我们使用帮助查看innobackupex的帮助文档:


image.png

进行完整备份例子:

innobackupex --defaults-file=/usr/local/mysql/etc/my.cnf --slave-info --host=192.168.3.199 --user=china --password=ChinaPassw0rd  /data/data_backup/

进行增量备份例子:
要我绑定微信,不想写,改天有时间再写

参考链接:http://blog.csdn.net/u010066807/article/details/50679276

上一篇下一篇

猜你喜欢

热点阅读