MySQL数据库基础之物理备份与日志管理

本文详细介绍了使用percona-xtrabackup进行MySQL物理备份,包括完全备份、增量备份和差异备份的步骤及恢复流程。同时,讨论了数据库日志管理,如错误日志、通用查询日志、二进制日志、中继日志和慢查询日志,以及如何设置和查看binlog。
摘要由CSDN通过智能技术生成

一:percona-xtrabackup 物理备份

1.简介

它是开源免费的支持MySQL 数据库热备份的软件,它能对InnoDB和XtraDB存储引擎的数据库非阻塞地备份。它不暂停服务创建Innodb热备份;为mysql做增量备份;在mysql服务器之间做在线表迁移;使创建replication更加容易;备份mysql而不增加服务器的负载。
percona是一家老牌的mysql技术咨询公司。它不仅提供mysql的技术支持、培训、咨询,还发布了mysql的分支版本–percona Server。并围绕percona Server还发布了一系列的mysql工具。

2.备份方式

完全备份:全部数据进行备份

增量备份:每次备份上一次备份到现在产生的新数据
比如我在周一进行了一次全备,周二的时候就不需要全备了,如果还全备,会浪费我们的磁盘空间,这个时候,周二我们就可以适用增量备份.周三四五六日都可以逐天进行一个增量备份.就是比如周一做了一个全备,然后到周二你现在准备做备份了,就是周一全备之后到周二备份之前的新数据可以做一个增量备份.

差异备份:只备份跟完整备份不一样的

3.软件安装

它是一个第三方软件,需要自行安装.
# wget http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1- 4.noarch.rpm
# rpm -ivh percona-release-0.1-4.noarch.rpm
关掉签名机制
# yum -y install percona-xtrabackup-24.x86_64

注意:
如果依赖包perl-DBD-MySQL安装不上,需先把percona源拿掉用centos的源单独安装,然后再安装percona- xtrabackup-24.x86_64
[root@e9fcf0f73504 yum.repos.d]# mv percona-release.repo percona-release.repo.bak [root@e9fcf0f73504 yum.repos.d]# yum -y install perl-DBD-MySQL
[root@e9fcf0f73504 yum.repos.d]# mv percona-release.repo.bak percona-release.repo [root@e9fcf0f73504 yum.repos.d]# yum -y install percona-xtrabackup-24.x86_64
注意:
Percona-Server-shared与mysql-community-server冲突。

解决方案:
原来是需要安装mysql-community-libs-compat

[root@localhost ~]# wget http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
--2020-05-09 00:32:16--  http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
正在解析主机 www.percona.com (www.percona.com)... 74.121.199.234
正在连接 www.percona.com (www.percona.com)|74.121.199.234|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 301 Moved Permanently
位置:https://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm [跟随至新的 URL]
--2020-05-09 00:32:17--  https://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
正在连接 www.percona.com (www.percona.com)|74.121.199.234|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:6555 (6.4K) [application/x-redhat-package-manager]
正在保存至: “percona-release-0.1-4.noarch.rpm”

100%[===================================================================================================>] 6,555       --.-K/s 用时 0s      

2020-05-09 00:32:18 (1.36 GB/s) - 已保存 “percona-release-0.1-4.noarch.rpm” [6555/6555])

[root@localhost ~]# rpm -ivh percona-release-0.1-4.noarch.rpm 
准备中...                          ################################# [100%]
正在升级/安装...
   1:percona-release-0.1-4            ################################# [100%]
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# vi percona-release.repo 
#进入这个软件的yum仓库把gpgcheck的1改为0关闭签名机制
[root@localhost yum.repos.d]# yum -y install percona-xtrabackup-24.x86_64
#然后安装.这个软件安装时候容易出问题,如果出现问题安装不上,上面有常见的问题和解决方法.

4.完整备份

完全备份流程
创建备份目录.
mkdir -p /xtrabackup/full

备份
innobackupex --user=root --password=‘QianFeng@123’ /xtrabackup/full

完全备份恢复流程

  1. 停止数据库
  2. 清理环境
  3. 重演回滚--> 恢复数据
  4. 修改权限
  5. 启动数据库

关闭数据库:
# systemctl stop mysqld
# rm -rf /var/lib/mysql/*
# rm -rf /var/log/mysqld.log
# rm -rf /var/log/mysql-slow/slow.log (有则删除,无则不需要操作)
恢复之前的验证恢复:
# innobackupex --apply-log /xtrabackup/full/2020-05-11_15-20-18/

确认数据库目录: 恢复之前需要确认配置文件内有数据库目录指定,不然xtrabackup不知道恢复到哪里 # cat /etc/my.cnf
[mysqld] datadir=/var/lib/mysql

恢复数据:
[root@xingdian mysql]# innobackupex --copy-back /xtrabackup/full/2020-05-11_15-20-18/
修改权限:
[root@xingdian mysql]# chown mysql.mysql /var/lib/mysql -R
启动数据库:
[root@xingdian mysql]# systemctl start mysqld
验证数据:
[root@xingdian mysql]# mysql -u root -pxxxx
mysql> show databases;

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值