位置: 编程技术 - 正文
推荐整理分享python cx_Oracle模块的安装和使用详细介绍,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
python cx_Oracle模块的安装
最近需要写一个数据迁移脚本,将单一Oracle中的数据迁移到MySQL Sharding集群,在linux下安装cx_Oracle感觉还是有一点麻烦的,整理一下,做个总结。
对于Oracle客户端,不只需要安装相应的python模块(这里我用了Oracle官方的python模块——cx_Oracle),还需要安装Oracle Client,一般选择Instant Client就足够了,还需要配置tnsnames.ora(当然也可以简单的通过host:port/schema访问)。
安装:
1. 首先确定版本。因为我们的Oracle数据是在是有点老,所以我选择了一个比较老的版本——Oracle Instant Client .2.0.4。
2. 下载instantclient-basic。下载地址: Oracle,居然要先注册才能下载,这也算了,关键是注册的时候,密码居然要求有数字有字母,字母还要有大小写,还必须至少8位。逼迫我搞了一个比我银行密码还要安全的密码(好吧,现在我已经忘记我填了什么了...),下basic就可以了。
3.安装配置
4.配置tnsnames.ora(可不用配置tns)
注意tnsnames.ora其实并不存在,是要自己创建的(这个也很恶心,我一开始以为还要安装什么东东。。),我没有使用这种方式,有兴趣的可以google一下。
5.下载安装cx_Oracle python模块
6.验证及问题解决
若报错:import cx_Oracle gave ImportError: libclntsh.so..1: cannot open shared object file: No such file or directory
表示没有找到instant client的动态库,check一下环境变量是否配置,是否生效,版本是否正确。
若报错:ImportError: ./cx_Oracle.so: undefined symbol: PyUnicodeUCS4_Decode
所以重新编译python
再次验证,终于正常import了。
使用:
1.基本连接?使用Oracle tns alias
2.用户输入密码连接
3.用户直接在Python命令中输入连接账号信息,格式如python script.py tp/tp@ocn_test
4.使用Easy Connect语法,通过Drive连接数据库
5.先使用DSN构成TNSNAME
6.登陆as SYSDBA
在Linux服务器执行Oracle操作时报了一个错误:
解决方式:
问题分析见
Python IDLE 错误:IDLE''s subprocess didn''t make connection 的解决方案 PythonIDLE错误描述:SubprocessStartupErrorIDLE'ssubprocessdidn'tmakeconnection.EitherIDLEcan'tstartasubprocessorpersonalfirewallsoftwareisblockingtheconnection.错误截图:错误原因分析
Python中类型检查的详细介绍 前言大家都知道Python是一门强类型、动态类型检查的语言。所谓动态类型,是指在定义变量时,我们无需指定变量的类型,Python解释器会在运行时自动
利用python程序生成word和PDF文档的方法 一、程序导出word文档的方法将web/html内容导出为world文档,再java中有很多解决方案,比如使用Jacob、ApachePOI、Java2Word、iText等各种方式,以及使用freemarker
标签: python cx_Oracle模块的安装和使用详细介绍
本文链接地址:https://www.jiuchutong.com/biancheng/380072.html 转载请保留说明!上一篇:python数据清洗系列之字符串处理详解(python数据清洗的方法有哪些)
下一篇:Python IDLE 错误:IDLE''s subprocess didn''t make connection 的解决方案(python的idle打不开解决办法)
友情链接: 武汉网站建设