python在oracle数据库运维中的实践.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
python在oracle数据库运维中的实践

Python 在 Oracle 数据库运维中的实践 作者:李园园   在日常运维中,常常有一些历史遗留的 Shell/Perl 等脚本语言形成的功能单一、交互稀少 的碎片化脚本,进行日常的监控、配置、检测、分析等方方面面的功能。随着 DevOps 深入到 运维工作中,传统意义上的颗粒化运维将会以系统管理的角色,承担更加流畅、敏捷、精“ ” 益的软件系统运行管理。    Python ,优雅、明确、简单的高级编程语言,伴随其开源的生态,具有强大的开发能力 和完整的工具,将在 DevOps 中成为流行的语言,对运维工作系统化、流程化。对Oracle 数据 库管理而言,使用 Python 进行运维,也将成为 DBA 一部分主要工作。   本文将介绍 Python 在 Oracle 数据库运维中的实践。 数据库操作实践 1. 安装cx_Oracle cx_Oracle 是 Python 操作 Oracle 数据库的模块,在安装模块之前,首先安装 Oracle 数据库 客户端,然后使用源码或 pip 进行安装: 1. $ pip install cx_Oracle 安装完成,验证可以引用: 1. $ python 2. import cx_Oracle 2. 建立数据库连接 在操作数据库之前,首先需要建立数据库连接: 1. dbconn = cx_Oracle .connect (hr,hr,:1521/orcl11g ) 2. print dbconn .version 3. .0 可以等价为: 1. dbconn = cx_Oracle .connect (hr/hr@:1521/orcl11g) 2. print dbconn .version 3. .0 也可以通过tnsnames 的方式建立数据库连接: 1. orcl11g = cx_Oracle .makedsn (, 1521, orcl11g) 2. dbconn = cx_Oracle .connect (hr,hr,orcl11g) 3. print dbconn .version 4. .0 此处的 orcl11g 可以看作配置tnsnames.ora 的一个连接串: 1. print orcl11g 2. (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.16 .0.2) (PORT=1521)))(CONNECT_DATA=(SID=orcl11g))) 3. 获取游标对象 可以使用数据库连接对象的cursor() 方法定义任意数量的游标。简单的程序使用一个游标就 可以了,该游标可以一再地重复使用。但较大的项目可能要求几个不同的游标。 1. dbcursor = dbconn .cursor () 4. 操作数据库 分析 cx_Oracle.Cursor.parse([statement]) 分析阶段不用显示调用,在执行阶段因为在执行阶段会自动分析 SQL 语句。该方法 可以用于在前端进行待执行语句的验证。当这类语句中检测出错误时,会引发 DatabaseError 异常。 1. testsql1 = select count(* from user_objects 2. dbcursor .parse (testsql1) 3. Traceback (most recent call last): 4. File stdin, line 1, in module 5. cx_Oracle.DatabaseError: ORA-00907: missing right parenthesis 执行 cx_Oracle.Cursor.execute(statement, [parameters], **keyword_parameters) 执行阶段调用时,可以传入一个 sql 语句作为单

文档评论(0)

wangsux + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档