首先安装Oracle Instant Client并配置环境变量,再通过pip install oracledb安装Python驱动,最后用代码测试连接;确保客户端版本与系统匹配,并正确设置PATH、LD_LIBRARY_PATH或DYLD_LIBRARY_PATH以避免常见错误。

要在Python中连接和操作Oracle数据库,你需要安装相应的驱动和客户端工具。以下是完整的安装步骤,适用于Windows、Linux和macOS系统。
1. 安装Oracle Instant Client
Python本身不直接支持Oracle数据库,需要依赖Oracle提供的底层客户端库(Instant Client):
- 前往Oracle官网下载页面
- 根据你的操作系统选择对应的Instant Client版本(建议使用Basic Light或Basic包)
- 解压下载的文件到本地目录,例如:C:\oracle\instantclient_21(Windows)或/opt/oracle/instantclient_21_6(Linux/macOS)
- 将该目录添加到系统的环境变量PATH中
2. 安装Python驱动 cx_Oracle
cx_Oracle是Python连接Oracle数据库的官方驱动,现在已更名为python-oracledb,推荐使用新版本:
pip install oracledb如果你仍需使用旧版cx_Oracle(不推荐):
立即学习“Python免费学习笔记(深入)”;
pip install cx_Oracle3. 验证安装并测试连接
写一段简单代码测试是否能成功连接Oracle数据库:
import oracledbtry:
connection = oracledb.connect(
user="your_username",
password="your_password",
dsn="hostname:port/service_name"
)
print("连接成功!")
cursor = connection.cursor()
cursor.execute("SELECT * FROM dual")
print(cursor.fetchone())
except Exception as e:
print("连接失败:", e)
4. 常见问题处理
- DLL load failed(Windows):确认Instant Client版本与系统架构一致(32位/64位),并正确配置PATH
- libclntsh.so not found(Linux):设置LD_LIBRARY_PATH指向Instant Client目录
- ORA-12541: No listener:检查数据库主机、端口和服务名是否正确
- macOS可能需要额外设置DYLD_LIBRARY_PATH
基本上就这些。只要Instant Client配置正确,再安装oracledb包,就能顺利在Python中操作Oracle数据库。











