在ubuntu 18.04上安装最新版greenplum(7.0.alpha)

近期组建了一个新的大数据测试集群,由4个物理机器构成一个测试集群,分别命名为hadoop1-4号机器,想要进行MPP并行数据库的安装与测试工作。服务器物理机安装的操作系统为ubuntu server 18.04版本。开始以为可以采用lanchpad的官方库进行安装,发现greenplum官方目前并未支持ubuntu 18.04,需要从源码编译安装。在尝试编译的过程中遇到了几个错误,最终通过一个变通的方法进行了处理,在此记录一下过程。

简而言之,是greenplum所采用的xerces-c库与ubuntu官方库的版本不一致,导致调用时遇到了DSO missing错误。可以采用禁止gporca的查询优化器方法来避免此错误,同时安装postgis插件也需要禁止raster功能,或者移除官方的xerces-c库,使用greenplum自带的xerces-c库。

下面记录一下第二种方案的编译过程。

一、安装gp-xercesc

git clone https://github.com/greenplum-db/gp-xerces.git
cd gp-xerces
mkdir build
cd build
../configure --prefix=/usr/local
make
sudo make install

二、安装gporca

git clone https://github.com/greenplum-db/gporca.git
cd gporca
cmake -GNinja -H. -Bbuild
sudo ninja install -C build

三、安装gpdb

git clone https://github.com/greenplum-db/gpdb.git
cd gpdb
sudo ./README.ubuntu.bash

此时系统会默认安装libxerces-c-dev库,需要将此库移除以使其正确编译。

sudo apt remove libxerces-c-dev   ###此库会有冲突
./configure --enable-orca --with-perl --with-python --with-libxml --prefix=/usr/local/gpdb
make -j32
sudo make -j32 install
sudo ldconfig

这样可以确保编译通过,且可安装,但在初始化greenplum之前还需要确保:

1、master机器到其他机器可以ssh密钥登陆

2、limits.conf和sysctl.conf已修改,且修改后重新登陆过。

3、在其他各机器执行相同的操作。

上述操作执行完之后,在master节点,指定某一目录作为greenplum的数据目录,比如/data,然后在master节点上建立/data/master目录,在所有节点上建立/data/primary目录。然后:

source /usr/local/gpdb/greenplum_path.sh
cd /data/master
cp /usr/local/gpdb/docs/cli_help/gpconfigs/hostfile_gpinitsystem .
cp /usr/local/gpdb/docs/cli_help/gpconfigs/gpinitsystem_config .

修改这两个配置文件,hostfile记录了greenplum所有机器的hostname,一行一个机器名;gpinitsystem_config记录了greenplum的目录设置和segment设置参数,需进行相应的修改,完成后即可启动数据库。

gpinitsystem -c gpinitsystem_config -h hostfile_gpinitsystem 

已发布

分类

,

来自

标签:

评论

《“在ubuntu 18.04上安装最新版greenplum(7.0.alpha)”》 有 1 条评论

  1. […] 首先尝试将数据库备份,删除再恢复,发现速度改善很小。有了上个集群的安装经验,于是决定将操作系统升级,并且将greenplum也升级6.0版本(其master版本是7.0,但稳定性还是有问题,发现有几个sql查询异常)。 […]

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注