寻找适配Oracle 21的cx_Oracle RPM包及替代数据库连接方案
兼容Oracle 21c的Python数据库连接RPM包获取及替代方案
cx_Oracle RPM包适配说明
cx_Oracle 8.3及以上版本全量兼容Oracle 21c,官方已提供对应不同操作系统、Python版本的预编译RPM安装包,适配RHEL/CentOS/Oracle Linux 7/8/9主流发行版:
- 安装前需确认系统已预装19c及以上版本的Oracle Instant Client基础包,可满足21c数据库的连接需求
- 对应RPM包命名规则为
python3<小版本号>-cx-oracle-<cx_Oracle版本号>-1.el<系统大版本号>.<架构>.rpm,例如Python 3.9、Oracle Linux 8、x86_64架构对应的包名为python39-cx-oracle-8.3.2-1.el8.x86_64.rpm,可直接匹配你的运行环境选用对应包
替代cx_Oracle的官方RPM包
如果找不到适配你环境的cx_Oracle RPM包,可使用Oracle官方推出的python-oracledb包,这是cx_Oracle的官方迭代版本,对Oracle 21c的兼容性更优,同样提供预编译RPM安装包:
- 该包支持精简运行模式,不需要额外安装Oracle Instant Client即可完成数据库连接,适配性更强
- 原有基于cx_Oracle开发的Python脚本几乎无需修改,仅需将
import cx_Oracle替换为import oracledb即可正常运行,接口完全向下兼容 - 对应RPM包命名规则为
python3<小版本号>-oracledb-<oracledb版本号>-1.el<系统大版本号>.<架构>.rpm,可直接匹配你的运行环境选用
安装注意事项
安装前请先卸载系统中原有通过pip或其他方式安装的cx_Oracle/python-oracledb包,避免版本冲突
- 本地安装RPM包可执行命令:
rpm -ivh <RPM包完整文件名> - 若出现依赖缺失报错,可执行命令自动补全依赖完成安装:
yum install -y --nogpgcheck <RPM包完整文件名>
内容的提问来源于stack exchange,提问作者yosribenhouria
相关产品推荐
相关产品推荐

