环境
ARM架构的麒麟V10操作系统
源码包
下载路径
# https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.22/source/tarball/percona-xtrabackup-2.4.22.tar.gz
依赖
```
# yum install -y curl-devel libgcrypt-devel crypt* libev-devel
# wget https://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz # 编译的时候需要下载,如果无法访问外网需要提前下载
```
开始编译
- 下载安装包
# wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.22/source/tarball/percona-xtrabackup-2.4.22.tar.gz -o /usr/local/
- 安装依赖
# yum install -y curl-devel libgcrypt-devel crypt* libev-devel
- 下载boost/包到/usr/local/boost
# mkdir /usr/local/boost # wget https://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz -o /usr/local/boost```
- 解压
# cd /usr/local/ && tar zxf percona-xtrabackup-2.4.22.tar.gz
- 开始编译
# cd /usr/local/percona-xtrabackup-2.4.22/ cmake -DBUILD_CONFIG=xtrabackup_release -DWITH_BOOST=/usr/local/boost && make -j8 备注: # -DWITH_BOOST:指定boost的文件路径 # make -j8: 表示以8个cpu进行编译,cpu个数越多,编译越快
- 安装
# make install
- 验证安装
# usr/local/xtrabackup/bin/innobackupex --version
常见报错
- boost错误
解决方法:CMake Error at cmake/boost.cmake:81 (MESSAGE): You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory> This CMake script will look for boost in <directory>. If it is not there, it will download and unpack it (in that directory) for you. If you are inside a firewall, you may need to use an http proxy: export http_proxy=http://example.com:80 Call Stack (most recent call first): cmake/boost.cmake:238 (COULD_NOT_FIND_BOOST) CMakeLists.txt:466 (INCLUDE)
没有下载boost,通过设置-DDOWNLOAD_BOOST=1允许下载boost,-DWITH_BOOST=<directory>指定下载的目标路径
- 找不到gcrypt库
解决方法:CMake Error at cmake/gcrypt.cmake:25 (MESSAGE): Cannot find gcrypt.h in /usr/include;/usr/local/include;/opt/local/include. You can use libgcrypt-config --cflags to get the necessary path and pass it to CMake with -DGCRYPT_INCLUDE_PATH=<path> Call Stack (most recent call first): storage/innobase/xtrabackup/src/CMakeLists.txt:26 (FIND_GCRYPT)
yum install -y crypt* libgcrypt-devel
- 找不到curl
解决方法:CMake Error at cmake/curl.cmake:23 (MESSAGE): Could not find cURL on your system Call Stack (most recent call first): storage/innobase/xtrabackup/src/CMakeLists.txt:27 (FIND_CURL)
yum install -y curl-devel
- 找不到 libev
解决方法:-- libev NOT found. CMake Error at cmake/libev.cmake:23 (MESSAGE): Could not find libev on your system Call Stack (most recent call first): storage/innobase/xtrabackup/src/CMakeLists.txt:28 (FIND_EV)
yum install -y libev-devel