Skip to content

在 openEuler 22.03(基于 RHEL/CentOS 体系)上安装 XtraBackup 2.4,由于官方仓库通常没有直接针对 openEuler 的包,我们可以利用其良好的兼容性,采用下载 CentOS/RHEL 8 的 RPM 包进行本地安装。

第一步:安装基础依赖

XtraBackup 的运行需要一些基础的 C 库和 Perl 模块支持:

bash
dnf install -y perl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQL libev

第二步:下载对应的 RPM 安装包

前往 Percona 官方下载页面获取适用于 RedHat/CentOS 8 的 XtraBackup 2.4 安装包(以 2.4.29 版本为例):

bash
wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm

第三步:执行本地安装

bash
dnf localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm -y

如果在安装过程中遇到 OpenSSL 库冲突报错,需要先执行 sudo dnf install -y compat-openssl10,然后再重新运行上述安装命令。

第四步:验证安装结果

bash
xtrabackup --version

预期输出应包含 2.4 版本号及 Linux x86_64 架构信息。

第五步:报错问题处理

问题 1

bash
Error: 冲突的请求
没有东西可提供 libcrypto.so.10()(64bit)
没有东西可提供 libssl.so.10()(64bit)

解决办法,下载兼容包:

bash
# centos7
wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.29-1.el7.x86_64.rpm

# centos8
wget http://mirrors.aliyun.com/centos/8-stream/AppStream/x86_64/os/Packages/compat-openssl10-1.0.2o-4.el8.x86_64.rpm

# 强制安装
rpm -ivh compat-openssl10-1.0.2o-4.el8.x86_64.rpm --nodeps

# 再重新安装 xtrabackup
dnf localinstall percona-xtrabackup-24-2.4.29-1.el7.x86_64.rpm -y

问题 2

bash
xtrabackup: error while loading shared libraries: libgcrypt.so.11: cannot open shared object file

第一步,下载包含该库文件的 RPM 包:

bash
wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/libgcrypt-1.5.3-14.el7.x86_64.rpm

第二步,提取库文件:

bash
mkdir libgcrypt_tmp && cd libgcrypt_tmp
rpm2cpio ../libgcrypt-1.5.3-14.el7.x86_64.rpm | cpio -idmv

第三步,将库文件复制到系统目录:

bash
cd ./lib64
cp libgcrypt.so.11 /usr/lib64/
xtrabackup --version
最近更新