在 MacOS M系列处理器上使用 Anaconda 开发 Oralce 的Python程序

在 MacOS M系列处理器上使用 Anaconda 开发 Oralce 的Python程序

因oracle官方驱动暂无 苹果 M 系列处理器版本,所以使用Arm的python解释器报驱动错误:

bash 复制代码
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library: "dlopen(libclntsh.dylib, 0x0001): tried: '/Users/xxx/software/oracle/instantclient_19_8/libclntsh.dylib' (mach-o file, but is an incompatible architecture (have (x86_64), need (arm64e))), 'libclntsh.dylib' (no such file), '/usr/lib/libclntsh.dylib' (no such file), '/Users/xxx/software/oracle/instantclient_19_8/libclntsh.dylib' (mach-o file, but is an incompatible architecture (have (x86_64), need (arm64e))), '/Users/xxx/Project/PyProject/libclntsh.dylib' (no such file)". See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help

因此,只能使用intel版本转译。

如果使用 Anaconda 来管理包的话,可以这样安装。

一、到Oracle的官网上下载对应版本的驱动,下载 basic 的即可。

html 复制代码
https://www.oracle.com/database/technologies/instant-client/macos-intel-x86-downloads.html

二、将驱动解压,并放到合适的位置,例如:放在

html 复制代码
/Users/oneuser/apptools/oracle/instantclient_11_2

并修改 ~.zsh (这里要适配你所用的Shell,有可能是~.bashrc),增中一个导出

bash 复制代码
export DYLD_LIBRARY_PATH=/Users/oneuser/apptools/instantclient_11_2/%

保存

三、用Anaconda创建一个环境,打开一个新的终端,输入

bash 复制代码
CONDA_SUBDIR=osx-64 conda create -n pyoraintel python=3.9

conda activate pyoraintel

pip3 install cx_oracle  #一定要用 pip3 来安装,不要用 conda 来安装,用conda来安装会错安装成 arm 版本。
相关推荐
毕设源码-赖学姐19 小时前
【开题答辩全过程】以 基于PHP的国学诗词网站与推荐系统的设计与实现为例,包含答辩的问题和答案
开发语言·php
盼哥PyAI实验室19 小时前
[特殊字符]️ 实战爬虫:Python 抓取【采购公告】接口数据(含踩坑解析)
开发语言·爬虫·python
Hello.Reader19 小时前
Flink ML VectorAssembler 把多列特征“拼”成一个向量列(数值 + 向量都支持)
java·python·flink
wjs202419 小时前
PostgreSQL NULL 值处理与优化
开发语言
Csvn19 小时前
🐫 Ollama 基础使用指南
人工智能·python
prettyxian19 小时前
【QT】Qt从零入门指南:创建你的第一个GUI程序
开发语言·qt
SCBAiotAigc19 小时前
opencv-python学习笔记(一):画线、打开摄像头
人工智能·python·opencv
狂放不羁霸19 小时前
VSCode | 设置保存时自动格式化 Python 文件
ide·vscode·python
清蒸鳜鱼19 小时前
【Open-AutoGLM】MacOS+Android配置、使用指南
android·macos
AllinLin19 小时前
javaScript学习计划(Day26-30)
开发语言·javascript·学习