The source code is available from the Percona XtraBackup Github project. The easiest way to get the code is with git clone and switch to the desired release branch, such as the following:
$ git clone https://github.com/percona/percona-xtrabackup.git $ cd percona-xtrabackup $ git checkout 2.2
You should then have a directory named after the release you branched, such as percona-xtrabackup.
The following packages and tools must be installed to compile Percona XtraBackup from source. These might vary from system to system.
In Debian-based distributions, you need to:
$ apt-get install build-essential flex bison automake autoconf \ libtool cmake libaio-dev mysql-client libncurses-dev zlib1g-dev \ libgcrypt11-dev
In RPM-based distributions, you need to:
$ yum install cmake gcc gcc-c++ libaio libaio-devel automake autoconf \ bison libtool ncurses-devel libgcrypt-devel libev-devel
At the base directory of the source code tree, if you execute:
$ cmake -DBUILD_CONFIG=xtrabackup_release -DWITH_MAN_PAGES=OFF && make -j4
and you go for a coffee, at your return Percona XtraBackup will be ready to be used.
You can build Percona XtraBackup with man pages but this requires python-sphinx package which isn’t available from that main repositories for every distribution. If you installed the python-sphinx package you remove the -DWITH_MAN_PAGES=OFF from previous command.
The following command:
$ make install
will install all Percona XtraBackup binaries, the innobackupex script and tests to /usr/local/xtrabackup. You can override this either with:
make DESTDIR=... install
or by changing the installation layout with: