`
Donald_Draper
  • 浏览: 971882 次
社区版块
存档分类
最新评论

Mysql 备份工具XtraBackup全量备份

阅读更多
Percona安装:http://donald-draper.iteye.com/admin/blogs/2314832
命令介绍:
The database user used to connect to the server and its password are specified by the --user and --password option,
$ innobackupex --user=DBUSER --password=SECRET /path/to/backup/dir/
$ innobackupex --user=LUKE  --password=US3TH3F0RC3 --stream=tar ./ | bzip2 -
$ xtrabackup --user=DVADER --password=14MY0URF4TH3R --backup --target-dir=/data/bkps/
If you don’t use the --user option, Percona XtraBackup will assume
the database user whose name is the system user executing it.
Other Connection Options
According to your system, you may need to specify one or more of the following options to connect to the server:
Option Description
–port The port to use when connecting to the database server with TCP/IP.
–socket The socket to use when connecting to the local database.
–host The host to use when connecting to the database server with TCP/IP.

innobackupex
    a wrapper script that provides functionality to backup a
    whole MySQL database instance with MyISAM, InnoDB, and XtraDB tables.
xtrabackup
    a compiled C binary, which copies only InnoDB and XtraDB data
xbstream
    new utility that allows streaming and extracting files to/from the xbstream format.

It is possible to use the xtrabackup binary alone, however,
the recommend way is using it through the innobackupex wrapper script and
let it execute xtrabackup for you. It might be helpful to first learn
how to use innobackupex, and then learn how to use xtrabackup for
having a better low-level understanding or control of the tool if needed.
---------------------------------------------------------------------------
命令实例:
# --defaults-file指定mysql配置文件
# innobackupex --defaults-file=/etc/my.cnf --user=donald --password=123456 /home/test/base
备份, 添加--no-timestamp选项,无时间戳,直接备份在base中,否则在base以时间戳建一个文件夹
innobackupex --user=donald --password=123456  --no-timestamp /home/test/base
准备还原:--use-memory 使用内存
innobackupex --apply-log --use-memory=100M /home/test/base
开始:
innobackupex --copy-back /home/test/base
注意:innobackupex备份的时候,innobackupex必须可以访问mysql datafile目录
以下是全量备份实验:
我的mysqldata数据目录是msyqldata
修改mysql数据目录权限:
[donald@test home]$ ls -al
total 12
drwxr-xr-x.  7 root   root    79 Aug  3 10:48 .
dr-xr-xr-x. 17 root   root  4096 Jul 26 14:32 ..
drwx------. 18 donald user  4096 Aug  5 11:38 donald=
drwxrwxr-x.  5 mysql  mysql 4096 Aug  5 11:37 mysqldata
drwxr-xr-x   5 mysql  mysql  119 Jul 26 15:51 mysqldata1
drwxrwxr-x.  2 mysql  mysql   64 Jul 26 16:05 mysqllog
drwxr-x---   4 donald user    30 Aug  5 15:00 test

[donald@test home]$ sudo chmod -R 777 mysqldata

[donald@test home]$ ls -al
total 12
drwxr-xr-x.  7 root   root    79 Aug  3 10:48 .
dr-xr-xr-x. 17 root   root  4096 Jul 26 14:32 ..
drwx------. 18 donald user  4096 Aug  5 11:38 donald=
drwxrwxrwx.  5 mysql  mysql 4096 Aug  5 11:37 mysqldata
drwxr-xr-x   5 mysql  mysql  119 Jul 26 15:51 mysqldata1
drwxrwxr-x.  2 mysql  mysql   64 Jul 26 16:05 mysqllog
drwxr-x---   4 donald user    30 Aug  5 15:00 test

备份:
donald@test home]$ innobackupex --user=donald --password=123456  /home/test/base

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona LLC and/or its affiliates 2009-2013.  All Rights Reserved.

This software is published under
the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

Get the latest version of Percona XtraBackup, documentation, and help resources:
http://www.percona.com/xb/p
....

查看生成的文件:
[donald@test base]$ ls
2016-08-05_16-08-30
[donald@test base]$ cd 2016-08-05_16-08-30/
[donald@test 2016-08-05_16-08-30]$ ls -al
total 274468
drwxr-xr-x 5 donald user      4096 Aug  5 16:08 .
drwx------ 3 donald user        32 Aug  5 16:10 ..
-rw-r--r-- 1 donald user       295 Aug  5 16:08 backup-my.cnf
-rw-r----- 1 donald user 281018368 Aug  5 16:08 ibdata1
drwx------ 2 donald user      4096 Aug  5 16:08 mysql
drwxr-xr-x 2 donald user      4096 Aug  5 16:08 performance_schema
drwx------ 2 donald user      4096 Aug  5 16:08 test
-rw-r--r-- 1 donald user        22 Aug  5 16:08 xtrabackup_binlog_info
-rw-r----- 1 donald user        97 Aug  5 16:08 xtrabackup_checkpoints
-rw-r--r-- 1 donald user       573 Aug  5 16:08 xtrabackup_info
-rw-r----- 1 donald user      2560 Aug  5 16:08 xtrabackup_logfile

查看检查点文件:
[donald@test 2016-08-05_16-08-30]$ cat xtrabackup_checkpoints
backup_type = full-backuped
from_lsn = 0
to_lsn = 13194628771
last_lsn = 13194628771
compact = 0

准备恢复:

[donald@test home]$ innobackupex --apply-log /home/test/base/2016-08-05_16-08-30

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona LLC and/or its affiliates 2009-2013.  All Rights Reserved.

This software is published under
the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

Get the latest version of Percona XtraBackup, documentation, and help resources:
http://www.percona.com/xb/p

160805 16:13:09  innobackupex: Starting the apply-log operation

IMPORTANT: Please check that the apply-log run completes successfully.
           At the end of a successful apply-log run innobackupex
           prints "completed OK!".

转移mysql数据文件:
[donald@test home]$ sudo service mysql stop
Shutting down MySQL.. SUCCESS!

[donald@test home]$ sudo mv mysqldata mysqldata2
[donald@test home]$ ls
donald=  mysqldata1  mysqldata2  mysqllog  test

全量恢复:
[donald@test home]$ sudo innobackupex --copy-back /home/test/base/2016-08-05_16-08-30/
.....
innobackupex: Starting to copy InnoDB log files
innobackupex: in '/home/test/base/2016-08-05_16-08-30'
innobackupex: back to original InnoDB log directory '/home/mysqldata'
innobackupex: Copying '/home/test/base/2016-08-05_16-08-30/ib_logfile1' to '/home/mysqldata/ib_logfile1'
innobackupex: Copying '/home/test/base/2016-08-05_16-08-30/ib_logfile0' to '/home/mysqldata/ib_logfile0'
innobackupex: Finished copying back files.

160805 16:22:57  innobackupex: completed OK!
[donald@test home]$ ls
donald=  mysqldata  mysqldata1  mysqldata2  mysqllog  test
[donald@test home]$ ls -al
total 16
drwxr-xr-x.  8 root   root    96 Aug  5 16:21 .
dr-xr-xr-x. 17 root   root  4096 Jul 26 14:32 ..
drwx------. 18 donald user  4096 Aug  5 11:38 donald=
drwxr-xr-x   5 root   root  4096 Aug  5 16:22 mysqldata
drwxr-xr-x   5 mysql  mysql  119 Jul 26 15:51 mysqldata1
drwxrwxrwx.  5 mysql  mysql 4096 Aug  5 16:19 mysqldata2
drwxrwxr-x.  2 mysql  mysql   64 Jul 26 16:05 mysqllog
drwxr-x---   4 donald user    30 Aug  5 15:00 test
恢复mysql数据目录权限
[donald@test home]$ sudo chown -R mysql:mysql mysqldata
[donald@test home]$ ls -al
total 16
drwxr-xr-x.  8 root   root    96 Aug  5 16:21 .
dr-xr-xr-x. 17 root   root  4096 Jul 26 14:32 ..
drwx------. 18 donald user  4096 Aug  5 11:38 donald=
drwxr-xr-x   5 mysql  mysql 4096 Aug  5 16:22 mysqldata
drwxr-xr-x   5 mysql  mysql  119 Jul 26 15:51 mysqldata1
drwxrwxrwx.  5 mysql  mysql 4096 Aug  5 16:19 mysqldata2
drwxrwxr-x.  2 mysql  mysql   64 Jul 26 16:05 mysqllog
drwxr-x---   4 donald user    30 Aug  5 15:00 test
[donald@test home]$ sudo service mysql start
Starting MySQL.. SUCCESS!
至此全量恢复完成,注意在备份恢复的过程中,mysql目录文件夹的权限



分享到:
评论

相关推荐

    MySQL 备份工具Xtrabackup.docx

    总的来说,Xtrabackup作为一款强大的MySQL备份工具,以其高效的备份和恢复能力,以及对InnoDB引擎的优化,成为了许多企业和开发者的选择。通过合理配置和使用Xtrabackup,可以实现高效、安全的数据库备份,确保在...

    percona-xtrabackup mysql备份工具

    总的来说,Percona XtraBackup是MySQL备份解决方案的有力选择,特别是在需要高效、安全、无中断备份的业务环境中。通过熟练掌握和使用这款工具,可以有效地保护数据,提高系统的可用性和可靠性。

    基于xtrabackup的MySQL数据库备份及还原Shell脚本.zip

    `xtrabackup`是Percona公司开发的一款高效、无锁的MySQL和MariaDB热备份工具,它允许在不影响数据库服务的情况下进行全备和增量备份。本教程将详细介绍如何使用`xtrabackup`结合Shell脚本来实现MySQL数据库的备份与...

    Mysql 备份恢复与xtrabackup备份

    Xtrabackup是一个开源的物理备份工具,它能够创建数据库的增量或完整备份,并且在备份过程中不影响数据库的正常服务。它的优点在于能够进行在线备份,减少业务中断时间,同时支持快速恢复。 - **增量备份** 只备份...

    xtrabackup备份恢复shell脚本

    Xtrabackup是一款开源的、针对InnoDB存储引擎的热备份工具,它能够在不锁定数据库的情况下进行完整备份。本文将详细探讨如何利用Xtrabackup结合Shell脚本来实现高效、灵活的备份与恢复操作。 一、Xtrabackup简介 ...

    MySQL备份学习之xtrabackup软件

    Xtrabackup是一款高效、开源的MySQL热备份工具,特别适用于InnoDB和XtraDB存储引擎。在这个主题中,我们将深入探讨Xtrabackup软件在MySQL备份中的应用及其重要特性。 首先,Xtrabackup由Percona公司开发,它允许在...

    物理备份,xtrabackup包 适用于MySQL5.7及以前

    Xtrabackup是Percona公司开发的一款高效、免费的MySQL物理备份工具,尤其适用于MySQL 5.7及之前的版本。它以其对InnoDB存储引擎的出色支持和在备份过程中对数据库服务几乎零影响的特点,成为了数据库管理员的首选。 ...

    mysql 5.7.28 - xtrabackup2.4 全套安装包

    Xtrabackup 2.4 是 Percona 公司开发的一款开源热备份工具,特别适用于 InnoDB 存储引擎的 MySQL 数据库,能够实现无中断的数据备份和恢复,保障业务连续性和数据安全性。 首先,让我们深入了解 MySQL 5.7.28 的...

    mysql数据库备份和恢复工具

    三、MySQL备份工具 1. mysqldump:MySQL官方提供的命令行工具,可以执行全量和增量备份。例如,执行全量备份的命令为: ``` mysqldump -u username -p password database_name > backup.sql ``` 2. Percona ...

    AutoMySQLBackup工具自动全量备份MySQL数据库

    AutoMySQLBackup是一款开源的、免费的MySQL数据库自动备份工具,它允许用户设置定期任务,对MySQL数据库进行全量备份。这款工具对于系统管理员来说非常实用,因为它可以确保数据的安全,避免因意外情况导致的数据...

    基于xtrabackup8工具全量物理备份Mysql8数据自动化工具

    原文链接:...2、可根据指定备份日期进行全库物理恢复

    mysql备份工具

    这里我们将深入探讨MySQL备份工具及其相关知识点。 1. **手动备份与自动备份** - **手动备份**:一般通过命令行或者图形界面工具(如MySQL Workbench)执行`mysqldump`命令来导出数据库。例如,`mysqldump -...

    MYSQL备份、还原

    在MySQL中,可以使用`mysqldump`工具进行全量备份。`mysqldump`是一个命令行实用程序,它可以将MySQL数据库结构和数据转换为SQL语句,然后保存到文本文件中,这就是压缩包中的`mysqldump.txt`文件。执行全量备份的...

    Xtrabackup 备份

    Xtrabackup 是一款专为 MySQL 和 Percona Server 设计的高效、高性能备份工具,尤其擅长对 InnoDB 存储引擎进行热备份(即在数据库正常运行时进行备份)。它由 Percona 公司开发,并支持多种备份模式,包括完全备份...

    往事随风MYSQL备份

    MySQL备份通常包括全量备份、增量备份和差异备份。全量备份是备份所有数据库或表,它是其他类型备份的基础。增量备份只备份自上次备份以来发生更改的数据,而差异备份则备份自上次全量备份以来发生变化的数据。这三...

    使用Xtrabackup进行MySQL备份2

    总结来说,Xtrabackup是一款强大的MySQL备份工具,尤其适用于需要保持高可用性的大型InnoDB数据库。其特性使得它在备份和恢复过程中能够兼顾效率、数据完整性和资源利用率,是数据库管理中的重要工具。

    mysql备份平台脚本

    Xtrabackup是InnoDB存储引擎的热备份工具,由Percona公司开发。它可以在不锁定MySQL数据库的情况下进行完整或增量备份,这意味着在备份过程中,应用仍然可以正常运行,不影响业务。Xtrabackup支持备份到本地磁盘或...

    mysql备份和恢复方案

    MySQL备份和恢复是数据库管理中的关键环节,旨在保护数据免受意外损失,如硬件故障、软件错误或数据损坏。在本方案中,我们将探讨两种主要的备份策略,并讨论如何实施有效的恢复计划,确保数据安全和应用程序的连续...

    第三十七章:Mysql全量备份及增量备份1

    Xtrabackup是一个开源的热备份工具,它可以对InnoDB和XtraDB存储引擎的MySQL数据库进行无锁备份。相比传统的冷备份,Xtrabackup能在不中断服务的情况下完成全量和增量备份,提高了备份效率,降低了业务影响。使用...

    Mysql备份可以执行的shell脚本

    首先,我们需要理解MySQL备份的基本类型:全量备份和增量备份。全量备份是指备份整个数据库或所有选定的数据库,而增量备份则仅备份自上次备份以来发生更改的数据。在shell脚本中,我们可以使用`mysqldump`命令来...

Global site tag (gtag.js) - Google Analytics