加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL 的物理备份用法

发布时间:2023-09-21 10:15:59 所属栏目:MySql教程 来源:
导读:物理备份的原理通常是基于物理文件的拷贝,和逻辑备份相比,它的最大优点是备份速度更快。本小节将主要介绍 MysqL 的物理备份方法。

1. 冷备
一般来说,冷备就是停止数据库服务,拷贝数据文件。这种方法对所有的
物理备份的原理通常是基于物理文件的拷贝,和逻辑备份相比,它的最大优点是备份速度更快。本小节将主要介绍 MysqL 的物理备份方法。

1. 冷备
一般来说,冷备就是停止数据库服务,拷贝数据文件。这种方法对所有的存储引擎都适合,但一般很少使用到冷备,因为需要停机窗口。

冷备的操作步骤如下:
停止 MysqL 服务,在操作系统层面复制数据文件和日志文件到备份目录。

[MysqL@localhost ~]$ service MysqLd stop
Shutting down MysqL.......... SUCCESS! 
[MysqL@localhost ~]$ scp -r /MysqL/data/ /MysqL/dbbackup/
热备则刚好相反,不影响数据库的正常运行,通过在线备份数据文件和 binlog 日志实现。

2. InnoDB 的热备
目前,比较流行的 InnoDB 存储引擎的热备工具是 Xtrabackup。 xtrabackup 是 Percona 公司开发的一个用于 MysqL 数据库物理热备的备份工具,支持 MysqL、Percona server 和 MariaDB,开源免费,是目前较为受欢迎的主流备份工具 ,它能对 InnoDB 数据库和 XTradB 存储引擎的数据库非阻塞地备份(对于 MyISAM 的备份同样需要加表锁)。

Xtrabackup 优点:
备份速度快,物理备份可靠;
备份过程不会打断正在执行的事务(无需锁表);
能够基于压缩等功能节约磁盘空间和流量;
自动备份校验;
还原速度快;
可以流传将备份传输到另外一台机器上;
在不增加服务器负载的情况备份数据。

实际案例:Xtrabackup 增量备份:
在进行增量备份之前,首先要有一次全量备份,第一次增量是基于全备份,之后的增量是基于上一次的增量备份。

[root@localhost ~]# innobackupex --defaults-file=/etc/my.cnf --user=root --password=MyNewPass4! --port=3306 --no-timestamp /MysqL/hotbackup/base
-- 从xtrabackup_checkpoints文件可以看出,备份类型为全备份,lsn号从0至14533834254
[root@localhost ~]# cat /MysqL/hotbackup/base/xtrabackup_checkpoints 
backup_type = full-backuped
from_lsn = 
to_lsn = 
last_lsn = 
compact = 
recover_binlog_info = 
表 customer 插入新的数据:

MysqL> insert into customer(id,last_name,first_name,birth_date,gender,balance) values(,,,'2020-08-10',,);
Query OK,  row affected ( sec)
MysqL> insert into customer(id,last_name,first_name,birth_date,gender,balance) values(,,,'2020-09-10',,);
Query OK,  row affected ( sec)
第一次增量备份:

[root@localhost ~]# innobackupex --defaults-file=/etc/my.cnf --user=root --password=MyNewPass4! --port=3306 --incremental --no-timestamp /MysqL/hotbackup/inc1 --incremental-basedir=/MysqL/hotbackup/base
-- 从xtrabackup_checkpoints文件可以看出,备份类型为增量备份,lsn号从lsn 14533834254至lsn 14533838790,14533834254为全备份的to_lsn,表示备份从lsn 14533834254以来的增量变化。
[root@localhost ~]# cat /MysqL/hotbackup/inc1/xtrabackup_checkpoints 
backup_type = incremental
from_lsn = 
to_lsn = 
last_lsn = 
compact = 
recover_binlog_info = 

3.小结
本小节主要介绍 MysqL 的物理备份方法:冷备和热备。

冷备主要是停止 MysqL 服务,在操作系统层面复制数据文件和日志文件到备份目录。

热备主要是针对 InnoDB 存储引擎,介绍了开源备份工具 -Xtrabackup 的使用方法:全量备份和增量备份。

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章