跳到主要内容

连接Oracle数据源

如果需要在ubuntu环境安装oracle服务器,有docker和本地安装两种办法,请自行参看其它文章。本文重点介绍如何在Redash的服务端安装oracle11gR2客户端以及oracle的python接口包cx-oracle,以便连接到oracle数据库服务器,作为数据源来进行数据展现。
1.首先从oracle官网下载安装包,注意找到11.2.0.4.0版
oracle-instantclient11.2-basic-11.2.0.4.0.x86_64.zip
oracle-instantclient11.2-sqlplus-11.2.0.4.0.x86_64.zip
oracle-instantclient11.2-sdk-11.2.0.4.0.x86_64.zip

2.创建/opt/oracle文件夹,赋予权限
sudo mkdir /opt/oracle sudo chmod 777 /opt/oracle
将上述包解压至/opt/oracle/instantclient_11_2/文件夹下

3.配置用户变量,在~/.bashrc文件最后追加环境变量配置信息
ORACLE_HOME=/opt/oracle/instantclient_11_2 PATH=$ORACLE_HOME:$PATH LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATH export TNS_ADMIN=$ORACLE_HOME/network/admin export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 export ORACLE_HOME PATH LD_LIBRARY_PATH
配置完毕后,刷新使环境变量生效source ~/.bashrc

4.创建软连接
sudo ln -f -s /opt/oracle/instantclient_11_2/lclntsh.so.11.1 /usr/lib/lclntsh.so sudo ln -f -s /opt/oracle/instantclient_11_2/libclntsh.so.11.1 /usr/lib/libclntsh.so

5.测试

执行sqlplus /nolog
屏幕出现下述结果即安装成功。
SQL*Plus: Release 11.2.0.4.0 Production on 星期二 1月 5 11:14:31 2019 Copyright (c) 1982, 2009, Oracle. All rights reserved. SQL>
输入exit退出sqlplus
如果不能登入oracle,请尝试执行:sudo apt-get install libaio-dev

6.安装python的cx_oracle包
进入redash文件夹,cd ~/redash
激活虚拟机:source venv/bin/activate
安装:pip install cx_Oracle==5.3
直至提示成功,即可进行oracle数据源配置。

7.注意:如果服务器和客户端安装了防火墙软件,要进行相关设置。