VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

python3环境配置

本文指导用户进行python3环境配置,用户可根据实际需要选择如下两种配置方式:

Vastbase创建plpython3u插件可按照上述方法配置python3环境,并设置相关环境变量,具体请参考创建plpython3u插件

前置条件

安装python需要的依赖(执行如下命令前请确保yum源可用)。

yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel gcc make

在数据库安装用户下配置python3环境

如下命令均在数据库安装用户下执行,本小节以vastbase为例。

步骤1 切换至数据库安装用户。

su - vastbase

步骤2 创建python安装路径,并进入。(本文安装路径以/home/vastbase/python为例)

mkdir -p /home/vastbase/python
cd /home/vastbase/python

步骤3 登录下载地址,下载对应版本的安装包,上传至步骤2创建的安装路径中。

步骤4 解压python安装包(安装包名称以实际为准)。

tar xf Python-3.****.tar.xz

步骤5 切换进入解压后获得的python-3.**目录下。

cd /home/vastbase/python/Python-3.**

步骤6 运行configure脚本,为编译安装做准备。

--prefix用于指定Python的安装路径,即步骤2中所创建路径。

./configure --prefix=/home/vastbase/python --enable-shared --with-ssl-default-suites=openssl --with-python3

步骤7 编译安装python3。

make&make install
  • 若返回结果显示Successfully,且无failed提示则表示编译安装成功。

  • 若返回结果中出现zipimport.ZipImportError: can't decompress data; zlib not available报错信息,则可执行如下命令解决:

    yum install -y zlib*
    

步骤8 拷贝so库文件到数据库目录下。

  • 如下命令以python3.8.so所在路径为例,用户应以实际安装的python版本对应库文件所在路径为准。例如Python3.6.8则需要拷贝libpython3.6m.so库文件。

  • 拷贝命令也可在root用户下执行。

  • /home/vastbase/local/vastbase/为数据库安装路径,即$GAUSSHOME环境变量对应路径。用户可先执行echo $GAUSSHOME确定数据库安装目录。

cp /home/vastbase/python/lib/libpython3.8.so /home/vastbase/local/vastbase/lib
cp /home/vastbase/python/lib/libpython3.8.so.1.0 /home/vastbase/local/vastbase/lib

步骤9 查看安装好的python3。

如上步骤为在数据库安装用户vastbase下安装python3环境,因此以root用户或其他用户身份执行如下命令将报错。

python3 -V

在root用户下配置python3环境

如下命令均在root下执行。

步骤1 创建python安装路径(路径可以为系统的任意目录,根据实际情况创建,本文安装路径以/home/vastbase/python为例)。

mkdir /home/vastbase/python

步骤2 登录下载地址,下载对应版本的安装包,上传至步骤1创建的安装路径中。

步骤3 解压python安装包(安装包名称以实际为准)。

cd /home/vastbase/python
tar -zxvf Python-3.**.tar.xz

步骤4 切换至python安装路径。

cd /home/vastbase/python/Python-3.**

步骤5 运行configure脚本,为编译安装做准备。

--prefix是Python的安装路径,即步骤1中所创建路径。

./configure --prefix=/home/vastbase/python --enable-shared --with-ssl-default-suites=openssl --with-python3

步骤6 编译安装python3。

make&make install

步骤7 创建软链接并查看。(如下命令以python3.8为例,用户应与实际安装的python版本对应文件所在路径为准)

ln -s /home/vastbase/python/bin/python3.8 /usr/local/python3
cd /usr/local
ll

当返回结果中有python3 -> /home/vastbase/python/bin/python3.*表示创建软连接成功。

步骤8 配置环境变量(root用户下)。

  • PYTHONHOME:python3安装路径,即运行configure脚本时通过--prefix指定的路径(步骤1中创建的路径)。

  • PATH:python3安装路径的bin目录。

1、打开配置文件。

vi ~/.bash_profile

2、添加如下环境变量。

export PYTHON_HOME=/home/vastbase/python
export PATH=$PYTHON_HOME/bin:$PATH

3、使环境变量生效。

source ~/.bash_profile

echo $PYTHON_HOME可用于检查环境变量是否生效。若返回上述所设置的值,则表示设置成功。

步骤9 拷贝库文件。

如下命令以python3.8.so.1.0所在路径为例,用户应以实际安装的python版本对应库文件所在路径为准。例如Python3.6.8则需要拷贝libpython3.6m.so.1.0库文件。

cp /home/vastbase/python/lib/libpython3.8.so.1.0 /usr/local/lib64/
cp /home/vastbase/python/lib/libpython3.8.so.1.0 /usr/lib/
cp /home/vastbase/python/lib/libpython3.8.so.1.0 /usr/lib64/

步骤10 查看安装好的python3。

python3 -V

创建plpython3u插件

步骤1 切换到Vastbase安装用户,打开配置文件。

vi ~/.Vastbase

步骤2 添加如下环境变量。

export PYTHONHOME=/home/vastbase/python
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/vastbase/python/lib
export PATH=$PATH:/home/vastbase/python/bin
  • PYTHONHOME:python3安装路径,即运行configure脚本时通过--prefix指定的路径(创建的Python安装路径)。

  • LD_LIBRARY_PATH:python3安装路径下的lib目录。

  • PATH:python3安装路径的bin目录。

在.Vastbase文件中,若LD_LIBRARY_PATH有多个,请参照上述命令修改靠后的一行。

步骤3 重启数据库。

vb_ctl restart

步骤4 登录vastbase数据库,创建plpython3u插件。

vsql  -r 
create extension plpython3u;