树莓派4b ubuntu系统安装oracle client工具和cx_Oracle包

前言

树莓派:4b 8G版,安装系统 ubuntu server 20.04.3 LTS
我最近做了一个小项目,需要连接oracle数据库,要安装oracle instant client连接工具,然后编写python程序,使用cx_Oracle包来操作数据库(oracle数据库并不在本机)。

下载文件

我这里下载的是arm版的zip安装包,当然也可以下载rpm包,用alien工具转换成deb并安装alien -i oracle-instantclient19.10-basic-19.10.0.0.0-1.aarch64.rpm,这里不展开记录。
树莓派4b ubuntu系统安装oracle client工具和cx_Oracle包

下载之后上传到服务器上。

安装instantclient_19_10

1、解压文件

cd /usr/local
sudo unzip instantclient-basic-linux.arm64-19.10.0.0.0dbru.zip  # 解压文件会自动新建instantclient_19_10文件夹

2、安装依赖(我的系统上已经存在最新版了)

sudo apt install libaio1  # 其他系统可能有些是libaio

树莓派4b ubuntu系统安装oracle client工具和cx_Oracle包

3、设置环境变量(当oracle instant client是系统上唯一安装的oracle软件时)

sudo vi ~/.bashrc

在最后面添加如下内容 按i进入编辑模式 编辑完后按esc键 输入:wq保存并退出

export LD_LIBRARY_PATH=/usr/local/instantclient_19_10:$LD_LIBRARY_PATH

执行source ~/.bashrc 使其生效

安装cx_Oracle

pip3 install cx_Oracle -i https://pypi.tuna.tsinghua.edu.cn/simple

安装完成之后,执行python3 -c "import cx_Oracle",如果没有报错提示则证明安装成功,此时输入pip3 list查看
树莓派4b ubuntu系统安装oracle client工具和cx_Oracle包

验证

编写python程序进行验证,文件名test_link.py,内容如下:

import cx_Oracle


if __name__ == ‘__main__‘:
    try:
        # username是你的oracle数据库用户名,password是密码,oracle host ip是oracle服务器的IP地址,SID是oracle配置的SID(一般是orcl)
        conn = cx_Oracle.connect(‘username‘, ‘password‘, ‘oracle host ip/SID‘)
        curs = conn.cursor()
        sql = f‘select sysdate from dual ‘
        curs.execute(sql)
        print([i for i in curs])
        curs.close()
        conn.close()
    except Exception as e:
        print(‘数据库连接失败‘+str(e))

将此文件上传到树莓派上后,在相同目录下执行python3 test_link.py,将会查询出结果,如下图:
树莓派4b ubuntu系统安装oracle client工具和cx_Oracle包

树莓派4b ubuntu系统安装oracle client工具和cx_Oracle包

上一篇:MySQL 执行计划 (一)


下一篇:MySQL数据库之——高级[进阶]SQL语句(三)正则表达式和存储过程