

在去年的文章《数据库管理-第232期 初探OpenTenBase(20240819)》,初次探索了OpenTenBase,那时的版本还是2.6.0,安装有一些不合理的地方,使用中也发现有许多功能不完善的。今年OpenTenBase发布了5.0版本,带来了很多新功能,本期使用RHEL8.10对新版本进行安装尝试。
除了主机名和操作系统变化以外,基本与前文一致:


操作系统相关配置也基本和前文一致,这里仅展示将变化的内容。
mkdir /iso
mount -r /dev/sr0 /iso
rm -rf /etc/yum.repo.d/*
cat > /etc/yum.repos.d/iso.repo <<EOF
[AppStream]
name=AppStream
baseurl=file:///iso/AppStream
gpgcheck=0
enabled=1
[BaseOS]
name=BaseOS
baseurl=file:///iso/BaseOS
gpgcheck=0
enabled=1
EOF
dnf -y install git sudo gcc make readline-devel zlib-devel openssl-devel uuid-devel bison flex cmake postgresql-devel libssh2-devel sshpass libcurl-devel libxml2-devel
这里uuid-devel(和去年版本一样)和libssh2-devel(epel中有)未包含在ISO的软件包中,需要单独处理。

dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
下载地址为:
https://repo.almalinux.org/almalinux/8/PowerTools/x86_64/os/Packages/uuid-devel-1.6.2-43.el8.x86_64.rpm
dnf -y install git sudo gcc make readline-devel zlib-devel openssl-devel bison flex cmake postgresql-devel libssh2-devel sshpass libcurl-devel libxml2-devel
dnf -y install ./uuid-devel-1.6.2-43.el8.x86_64.rpm
su - opentenbase
cd /data/opentenbase/
git clone https://github.com/OpenTenBase/OpenTenBase
export SOURCECODE_PATH=/data/opentenbase/OpenTenBase
export INSTALL_PATH=/data/opentenbase/install/
cd${SOURCECODE_PATH}
rm -rf ${INSTALL_PATH}/opentenbase_bin_v5.0
chmod +x configure*
./configure --prefix=${INSTALL_PATH}/opentenbase_bin_v5.0 --enable-user-switch --with-libxml --disable-license --with-openssl --with-ossp-uuid CFLAGS="-g"


需要安装zstd、lz4相关包(dnf安装无法解决):
# https://github.com/OpenTenBase/OpenTenBase/issues/166
git clone https://github.com/facebook/zstd.git
cd zstd
make -j$(nproc)
make install
git clone https://github.com/lz4/lz4.git
cd lz4
make -j$(nproc)
sudo make install
在实际后续操作过程中还有一些包需要安装:
dnf -y install libxslt-devel openldap-devel perl-IPC-Cmd perl-Test-Simple python36-devel tcl-devel crypto-devel
wget https://github.com/jtv/libpqxx/archive/refs/tags/6.4.8.zip
unzip 6.4.8.zip && cd libpqxx-6.4.8
dnf -y install gcc-c++
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
make -j$(nproc)
make install
安装上述软件后重新执行conifigure可继续执行。
make clean
make -sj
make install
chmod +x contrib/pgxc_ctl/make_signature
cd contrib
make -sj
make install
因为时间原因本期就不部署数据库了(还有就是得重新学习官方文档)。
OpenTenBase 5.0带来了很多新功能,但是部署比2.6还麻烦,需要吐槽一下,希望以后RPM包安装能方便些。 老规矩知道写了些啥。