logo
关于我们

技术分享

技术分享 Xtrabackup--InnoDB备份工具介绍

Xtrabackup--InnoDB备份工具介绍

2021-06-03

接上回:

mysql> select Host,User,Password  from mysql.user;
+------------------+--------+-------------------------------------------+
| Host             | User   | Password                                  |
+------------------+--------+-------------------------------------------+
| localhost        | root   | *2CF528CA7B474EC019B52035BDF52F143D939DBA |
| gzy.tongzhou.com | root   | *2CF528CA7B474EC019B52035BDF52F143D939DBA |
| 127.0.0.1        | root   | *2CF528CA7B474EC019B52035BDF52F143D939DBA |
| %                | zabbix | *2CF528CA7B474EC019B52035BDF52F143D939DBA |
| localhost        | backup | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost        | test1  | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+------------------+--------+-------------------------------------------+
6 rows in set (0.00 sec)


此时发现用户test1已经存在了,证明xtrabackup的恢复是成功的,但是test2却没有恢复,只能使用我们之前备份的二进制日志文件来恢复了。

去完全备份的目录下查看一下当时备份时候binlog的日志信息(因为增量备份是被应用到完全备份里的,当然,查看最后一次增量备份目录中的这个文件信息也可以,其实两个内容是一样的):

[root@gzy ~]# cat /backup/2014-02-17_01-09-48/xtrabackup_binlog_info 
mysql-bin.000021	574


读取该二进制日志的位置并保存至.sql文件

[root@gzy ~]# mysqlbinlog --start-position=574 /tmp/mysql-bin.000021 > /tmp/1.sql
[root@gzy ~]#


进入mysql且先关闭二进制功能,进行恢复,再开启二进制功能:

mysql> set sql_log_bin = 0;
Query OK, 0 rows affected (0.00 sec)

mysql> source /tmp/1.sql;
Query OK, 0 rows affected (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

mysql> set sql_log_bin = 1;
Query OK, 0 rows affected (0.00 sec)


再查看一下,发现用户test2已恢复回来了

mysql> select Host,User,Password  from mysql.user;
+------------------+--------+-------------------------------------------+
| Host             | User   | Password                                  |
+------------------+--------+-------------------------------------------+
| localhost        | root   | *2CF528CA7B474EC019B52035BDF52F143D939DBA |
| gzy.tongzhou.com | root   | *2CF528CA7B474EC019B52035BDF52F143D939DBA |
| 127.0.0.1        | root   | *2CF528CA7B474EC019B52035BDF52F143D939DBA |
| %                | zabbix | *2CF528CA7B474EC019B52035BDF52F143D939DBA |
| localhost        | backup | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost        | test1  | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost        | test2  | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+------------------+--------+-------------------------------------------+



到这里,xtrabackup的完全+增量+二进制备份及恢复已经完成了。

当然了,xtrabackup还有很多高级功能,比如说进行备份恢复时指定具体的内存资源来加快速度、指定以数据流的形式压缩、从远程主机上的备份文件进行恢复、备份指定库或指定表等等,总得来说功能还是比较强大的,重要的是其基于文件系统或者说基于innodb存储引擎底层技术实现的物理备份特性还是比较赞的,根据公司业务的对数据备份可靠性的具体需求,可以自定义其使用的命令参数和方法。有兴趣的朋友可以去深入研究一下,这里就不一一列举了,其实这个工具的使用无非就是命令行参数的组合,使用xtrabackup --help列出其参数选项然后读一下然后理解其含义,然后测试使用即可。



云祺备份软件,云祺容灾备份系统,虚拟机备份,数据库备份,文件备份,实时备份,勒索软件,美国,图书馆
  • 标签:
  • 云计算

您可能感兴趣的新闻 换一批

现在下载,可享30天免费试用

立即下载