本文主要是给大家介绍了应用Docker制做Python自然环境联接Oracle镜像系统实例详细说明,感兴趣的小伙伴可以参考借鉴一下,希望可以有一定的帮助,祝愿大家多多的发展,尽快涨薪
Python联接Oracle本地检测
依靠安装使用提前准备
Python、连接Oracle必须Python依靠和当地Oracle客户端,接口测试Oracle版本号12.1.0.2.0,开发和测试自然环境为linux,先安装使用linux手机客户端,挑选zip解压免安装版本
解压到某个目录
unzip instantclient-basic-linux.x64-12.1.0.2.0.zip
解压后新建/network/admin文件夹
cd/opt/instantclient_12_1/ mkdir-p/network/admin
修改root用户的环境变量
vim/etc/profile export ORACLE_HOME=/opt/instantclient_12_1 export TNS_ADMIN=$ORACLE_HOME/network/admin export NLS_LANG="SIMPLIFIED CHINESE_CHINA".ZHS16GBK export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss" export LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATH export PATH=$ORACLE_HOME:$PATH source/etc/profile
下一步安装Python依赖
pip install cx_Oracle
Python脚本测试
root ubuntu:~#python Python 3.7.6(default,Jan 8 2020,19:59:22) [GCC 7.3.0]::Anaconda,Inc.on linux Type"help","copyright","credits"or"license"for more information. >>>import cx_Oracle as cx >>>con=cx.connect('username','password','xxx.xxx.xxx.xxx:1521/ORCL') >>>cursor=con.cursor() >>>cursor.execute("select*from emp") <cx_Oracle.Cursor on<cx_Oracle.Connection to c##als770ud1 192.168.61.79:1521/ORCL>> >>>cursor.fetchall() [(1,'张三'),(2,'李四'),(3,'王五')] >>>
制作Docker镜像
创建Dockerfile touch Dockerfile #将oracle本地客户端文件夹移动到同一级目录
cp-r/opt/instantclient_12_1/./ Dockerfile FROM python:3.7 ENV PIPURL"https://mirrors.aliyun.com/pypi/simple/" RUN pip install cx_Oracle--default-timeout=1000 COPY instantclient_12_1/opt/instantclient_12_1 ENV ORACLE_HOME=/opt/instantclient_12_1 ENV TNS_ADMIN=$ORACLE_HOME/network/admin ENV NLS_LANG="SIMPLIFIED CHINESE_CHINA".ZHS16GBK ENV NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss" ENV LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATH ENV PATH=$ORACLE_HOME:$PATH RUN apt-get update RUN apt-get install-y libaio1
镜像构建
docker build-t xiaogp/python_oraqcle:v3.
构建完成
root ubuntu:~/docker/PYTHON_ORACLE#docker images REPOSITORY TAG IMAGE ID CREATED SIZE xiaogp/python_oraqcle v3 bb0100d9c3f5 39 seconds ago 1.1GB
启动镜像测试一下
root ubuntu:~/docker/PYTHON_ORACLE#docker run-it bb0100d9c3f5/bin/bash root fbff875ba4d5:/#python Python 3.7.9(default,Jan 12 2021,17:26:22) [GCC 8.3.0]on linux Type"help","copyright","credits"or"license"for more information. >>>import cx_Oracle as cx >>>con=cx.connect('username','password','xxx.xxx.xxx.xxx:1521/ORCL') >>>cursor=con.cursor() >>>cursor.execute("select*from emp") <cx_Oracle.Cursor on<cx_Oracle.Connection to c##als770ud1 192.168.61.79:1521/ORCL>> >>>cursor.fetchall() [(1,'张三'),(2,'李四'),(3,'王五')]
启动镜像测试一下
root ubuntu:~/docker/PYTHON_ORACLE#docker run-it bb0100d9c3f5/bin/bash root fbff875ba4d5:/#python Python 3.7.9(default,Jan 12 2021,17:26:22) [GCC 8.3.0]on linux Type"help","copyright","credits"or"license"for more information. >>>import cx_Oracle as cx >>>con=cx.connect('username','password','xxx.xxx.xxx.xxx:1521/ORCL') >>>cursor=con.cursor() >>>cursor.execute("select*from emp") <cx_Oracle.Cursor on<cx_Oracle.Connection to c##als770ud1 192.168.61.79:1521/ORCL>> >>>cursor.fetchall() [(1,'张三'),(2,'李四'),(3,'王五')]
综上所述,这篇文章就给大家介绍到这里了,希望可以给大家带来帮助。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/128847.html
文中关键阐述了Python数据库连接并批量插入包括时长记载的实际操作,文章内容紧扣主题进行详尽的基本介绍,具有很强的实用价值,需用的同学可以学习一下 序言 服务平台: windows10.0 python3.8 oracle mysql 目地 必须通过python建立模型,并把结论储存至SQL数据库系统中,其中还有某列数据信息为时长种类,在储存全过程碰到一些现象,现就处理方式整...
摘要:获取阿里云加速器地址进入登录阿里云进入后台配置加速器点击后就会重启并应用配置的镜像地址了检查加速器是否生效配置加速器之后,如果拉取镜像仍然十分缓慢,请手动检查加速器配置是否生效,在命令行执行,如果从结果中看到了如下内容,说明配置成功。 一、为什么要使用Docker以及与虚拟机的区别? 1.1 为什么要使用Docker Docker的思想来自于集装箱。集装箱解决了什么问题?在一艘大船上,...
摘要:避免我机器上可以运行无论是上一篇介绍的企业部署还是本文的个人用例,都提到了这个情况。如果你用的是,那么我给你一个建议从云主机提供商那儿租用一台云主机我推荐使用系统的云主机。在云服务提供商之间移植大多数的云主机提供商已经全面支持。 在上篇文章 8 个你可能不知道的 Docker 知识 中介绍了 Docker 在生产环境中的用例,有些开发者可能还是不明白 Docker 对自己到底有多...
阅读 874·2023-01-14 11:38
阅读 820·2023-01-14 11:04
阅读 672·2023-01-14 10:48
阅读 1830·2023-01-14 10:34
阅读 880·2023-01-14 10:24
阅读 740·2023-01-14 10:18
阅读 469·2023-01-14 10:09
阅读 507·2023-01-14 10:02