python3环境配置
本文指导用户进行python3环境配置,用户可根据实际需要选择如下两种配置方式:
在数据库安装用户下配置python3环境,此方式仅在该用户的文件夹下单独安装python及相关库,不会影响其他用户的使用环境。
在root用户下配置python3环境,此方式可以安装多个不同版本的python,方便用户按需切换使用。
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;