一、安装cx_Oracle
本机系统:macOS Monterey 版本 12.5
Anaconda版本:Anaconda3-2022.10-MacOSX-x86_64.pkg
python版本:3.9.13
mac下安装cx_Oracle比较简单,直接打开终端
pip install cx_Oracle
二、安装Oracle客户端
直接安装完cx_Oracle,Python是能正常的import包的,此时是不会出现问题的,但是如果不安装客户端,不配置环境的话,就会报错,如下:
其实根据报错信息,点进去最后的链接里面,有详细的安装说明,简化来说就是:
2.1 安装Oracle客户端
Instant Client for macOS (Intel x86)
在上面链接下载Basic 64位的DMG,我下载的是下图中的版本
在Finder中找到他,并双击DMG文件,此时并不会像其他的软件一样进行安装,只会弹出一个文件夹内的一些文件
打开终端,并运行里面的安装脚本,如下:
/Volumes/instantclient-basic-macos.x64-19.8.0.0.0dbru/install_ic.sh
这会将内容复制到$HOME/Downloads/instantclient_19_8
. 应用程序可能无法访问该Downloads
目录,因此您应该将 Instant Client 移动到方便的地方。
在 Finder 中,弹出安装的 Instant Client 包。
注意,如果运行不成功的话,就把文件放在其他的位置再重来来一遍,记得先弹出安装的Instant Client包。等安装成功后,可以把 instantclient_19_8 文件夹放在一个稳定不会删除的地方,比如我就放在了~/Library/OracleClient/instantclient_19_8 的位置
2.2 配置环境变量
# 编辑bash_profile配置文件
vi ~/.bash_profile
# 添加下面内容,instantclient_19_8就是我们刚才所放文件的路径
export ORACLE_HOME=/Users/wangyu/Library/OracleClient/instantclient_19_8
export PATH=$ORACLE_HOME:$PATH
# 保存退出后再刷新下环境变量
source ~/.bash_profile
三、初始化cx_Oracle
安装完并配置好环境变量就可以进行这一步的初始化了,官方好几种方式,我这选了一个最简单的方法。
# 添加软连接
ln -s ~/Library/OracleClient/instantclient_19_8/libclntsh.dylib /Users/wangyu/opt/anaconda3/lib/python3.9/site-packages
前面是我们的文件所在路径,后面是我的Python包的路径。
四、测试
参考链接:
Mac 安装cx_Oracle库_FearlessPC的博客-CSDN博客