Python+cx_Oracle安装及一个简单示例(归档下热备数据文件)
系统环境:[root@nich4 cx_Oracle-py]# uname -aLinux nich4 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:54 EDT 2009 i686 i686 i38
系统环境:
[root@nich4 cx_Oracle-py]# uname -a
Linux nich4 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:54 EDT 2009 i686 i686 i386 GNU/Linux
python版本:
[root@nich4 cx_Oracle-py]# python -V
Python 2.4.3
oracle版本:
oracle database 10.2.0.5 x86
cx_Oracle简介:
cx_Oracle 是一个 Python 扩展模块,通过使用所有数据库访问模块通用的数据库 API 来实现 Oracle 数据库的查询和更新。为使用一些专为 Oracle 设计的特性,还加入了多个通用数据库 API 的扩展。
cx_Oracle 的开发历时十多年,涵盖了大多数需要在 Python 中访问 Oracle 的客户的需求。2008 年 12 月,,一个新的主要版本解决了早期版本的众多限制,并增添了对 Python 3.0 和 Oracle 新推出的一些特性的支持。
cx_Oracle官方及下载:
下载与python版本对应的cx_Oracle版本,一般选择非UNICODE版本就行了.
我选择的是CentOS 5 i386 RPM (Oracle 10g, Python 2.4)
下载之后rpm -ivh 安装.
修改oracle环境变量,加入:
export LD_LIBRARY_PATH=/opt/oracle/10g\:/opt/oracle/10g/network/lib
连接数据库示例:
以下是一个在归档数据库下热备份数据文件的脚本.
#!/bin/env python
# -*- coding: UTF-8 -*-
# Modified: 20101012-23:25:43 by nich4@msn.com
# Filename: hotbak.py
#
import subprocess
import cx_Oracle
import os
db_username = 'sys'
db_passwd = 'oracle123'
db_sid = 'sol10g'
bak_dir = '/u01/app/oracle/oradata/bak/sol10g/'
db = cx_Oracle.connect(db_username,db_passwd,db_sid,cx_Oracle.SYSDBA)
print "连接数据库成功!"
curs = db.cursor()
sql = r'''select 'cp '||name||' %s' from v$datafile''' % bak_dir
res = []
for rs in curs.execute(sql):
res.append(rs[0])
curs.execute('alter database begin backup')
print "开始备份数据文件..."
for i in res:
fname = i.split()[1].split('/')[-1].strip()
print "正在备份%s 到 %s ..." % (fname,bak_dir)
subprocess.call(i,shell=True)
print "数据文件%s 备份完成!" % fname
curs.execute('alter database end backup')
db.close()
print "备份完成!"
注: 该脚本在solaris-10+oracle-10gR2下测试. 这个脚本没有使用python的shutil模块来执行文件的拷贝.仅为演示用.

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PHP主要是过程式编程,但也支持面向对象编程(OOP);Python支持多种范式,包括OOP、函数式和过程式编程。PHP适合web开发,Python适用于多种应用,如数据分析和机器学习。

PHP适合网页开发和快速原型开发,Python适用于数据科学和机器学习。1.PHP用于动态网页开发,语法简单,适合快速开发。2.Python语法简洁,适用于多领域,库生态系统强大。

PHP起源于1994年,由RasmusLerdorf开发,最初用于跟踪网站访问者,逐渐演变为服务器端脚本语言,广泛应用于网页开发。Python由GuidovanRossum于1980年代末开发,1991年首次发布,强调代码可读性和简洁性,适用于科学计算、数据分析等领域。

Python更适合初学者,学习曲线平缓,语法简洁;JavaScript适合前端开发,学习曲线较陡,语法灵活。1.Python语法直观,适用于数据科学和后端开发。2.JavaScript灵活,广泛用于前端和服务器端编程。

在 Sublime Text 中运行 Python 代码,需先安装 Python 插件,再创建 .py 文件并编写代码,最后按 Ctrl B 运行代码,输出会在控制台中显示。

Oracle不仅是数据库公司,还是云计算和ERP系统的领导者。1.Oracle提供从数据库到云服务和ERP系统的全面解决方案。2.OracleCloud挑战AWS和Azure,提供IaaS、PaaS和SaaS服务。3.Oracle的ERP系统如E-BusinessSuite和FusionApplications帮助企业优化运营。

Golang在性能和可扩展性方面优于Python。1)Golang的编译型特性和高效并发模型使其在高并发场景下表现出色。2)Python作为解释型语言,执行速度较慢,但通过工具如Cython可优化性能。

在 Notepad 中运行 Python 代码需要安装 Python 可执行文件和 NppExec 插件。安装 Python 并为其添加 PATH 后,在 NppExec 插件中配置命令为“python”、参数为“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通过快捷键“F6”运行 Python 代码。
