- 安装cx_oracle
sudo python -m pip3 install cx_Oracle --upgrade
或
sudo pip3 install cx_Oracle --pre
- 下载即时客户端包:
-
解压并放在oracle目录下
mkdir -p /opt/oracle unzip instantclient-basic-macos.x64-12.2.0.1.0.zip
-
创建软链接,以便启动程序时能找到需要的库
ln -s /opt/oracle/instantclient_12_2/libclntsh.dylib ~/lib/
如果没有
lib
文件,新建mkdir ~/lib
-
复制OCI库
cp /opt/oracle/instantclient_12_2/{libclntsh.dylib.12.1,libclntshcore.dylib.12.1,libons.dylib,libnnz12.dylib,libociei.dylib} ~/lib/
-
连接数据库测试代码:
import cx_Oracle #引用模块cx_Oracle conn=cx_Oracle.connect('trump/[email protected]:1521/EE.oracle.docker') #连接数据库 c=conn.cursor() #获取cursor x=c.execute('select * from users') #使用cursor进行各种操作 print(x.fetchall()) c.close() #关闭cursor conn.close()
其中 EE.oracle.docker
每个人安装配置不一样,有的是数据库实例名,有的是全局数据库名,我用到的是后者,详情解释查看
结果:
```
[(283, 'qxj', '123456'), (1, 'quanxj', '654321')]
```
成功