首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | HR | 镜像
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
搜索中心 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>linux数据库>其他>正文

实战Linux环境配置DBD:Oracle模块

http://www.oklinux.cn  2009-04-09  51cto    会员收藏  游客收藏  【 】 
您查看的文章来源于http://www.oklinux.cn

Web开发,不外乎两点,一为版面,一为内容。

论版面,PERL的CGI模块功能强大,又简单易用,短短数行,便能动态生成HTML网页。

而论内容,那么必然会用到数据库,用数据库来管理内容。PERL对数据库的支持广而且全,几乎所有的主流数据库都有与之相应的PERL模块支持。为了开发可在不同数据库上移植的PERL应用,DBI(DataBase Interface)模块应运而生,使用这个模块,应用只需使用统一的接口便能操作不同的数据库,真正实现了可移植;当然,这个DBI也配备有相应的开关来支持不同数据库的各种特性,每一个数据库都能单独成文,本篇暂不涉及这此点。

DBI只是个抽象层,要实现支持不同的数据库,则需要在DBI之下,编写针对不同数据库的驱动。对MySql来说,有DBD::Mysql, 而对Oracle来说,则是DBD::Oracle。其中的DBD这是DataBase Driver之简写。

所以总的体系结构如下所示:

应用(Application) -> DBI -> DBD -> DB

要连接不同类型的数据库,就得在应用所在主机上配置安装DBI以及相对应的DBD模块,关于DBI的安装配置,偶遇此文,大家全可拿来参考,我就不重新造轮子,安装顺序是先装DBI,再装DBD::Oracle。

DBD::Oracle模块不是Oracle官方开发的,而是由Pythian Group这个很有名的DBA咨询公司组织专人开发,目前的最新版本是1.22,主页在http://www.pythian.com/news/dbd-oracle,读者可以到那里找到关于此模块的最新动态。

接下来把如何安装DBD::Oracle的步骤罗列如下,供大家参考。

DBD::Oracle模块既可安装在有Oracle Database的主机上,也可以装在没有Oracle Database的主机上,后者需要安装Oracle Instant Client进行远程数据库连接,本文只关注第二种配置,即DBD::Oracle通过Instant Client实现数据库访问。

第一步: 下载Oracle Instant Client

Oracle Instant Client的主页在http://www.oracle.com/technology/tech/oci/instantclient/index.html ; 秉承了Oracle公司的一贯做法,同一软件按配置分成了不同的可下载包,让用户可以按照自己的需求,找到最合适的部分下载。要成功配置DBD::Oracle, 需要Basic,SQL*Plus,SDK这三个配置,读者需要把这三个包下载并放到同一目录,如下所示为我已经下载的三个包,版本是当前最新的11.1.0.7

shawn@shawn-laptop:/tmp/InstantClient$ls

instantclient-basic-linux32-11.1.0.7.zip

instantclient-sdk-linux32-11.1.0.7.zip

instantclient-sqlplus-linux32-11.1.0.7.zip

使用unzip命令在当前目录解压这三个zip文件,会自动生成instantclient_11_1目录,这里面包含了以上三个包里面的所有文件,解压后的目录结构:

shawn@shawn-laptop:/tmp/InstantClient$ls

instantclient_11_1

instantclient-basic-linux32-11.1.0.7.zip

instantclient-sdk-linux32-11.1.0.7.zip

instantclient-sqlplus-linux32-11.1.0.7.zip

这时候这三个zip文件已经没用,可以删之,也可备份供以后重用。

第二步:下载DBD::Oracle

这个时候,我们可以使用PERL自带的CPAN进行自动安装,也可以手动下载此模块,编译安装,此文采用后者。

DBD::Oracle在search.cpan.org的下载地址是http://search.cpan.org/CPAN/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.22.tar.gz,下载后随便放到某一目录,这里我放到/tmp,然后解压,如下:

shawn@shawn-laptop:/tmp$tarzxf DBD-Oracle-1.22.tar.gzDBD-Oracle-1.22shawn@shawn-laptop:/tmp/DBD-Oracle-1.22$lsChanges Makefile.PL oraperl.ph README.login.txtdbdimp.c MANIFEST Oraperl.pm README.longs.txt[..省略部分屏幕输出..]

第三步:配置ORACLE_HOME环境变量

如果安装了Oracle Database软件,这个ORACLE_HOME就是安装oracle时所设值。在只安装Instant Client的情形下,此值设为第一步中instantclient_11_1目录的绝对路径,如下:

shawn@shawn-laptop:/tmp/DBD-Oracle-1.22$exportORACLE_HOME=/tmp/InstantClient/instantclient_11_1

shawn@shawn-laptop:/tmp/DBD-Oracle-1.22$echo $ORACLE_HOME

/tmp/InstantClient/instantclient_11_1

第四步:编译安装DBD::Oracle模块

首先是使用PERL的Makefile.PL来生成makefile

shawn@shawn-laptop:/tmp/DBD-Oracle-1.22$perl Makefile.PLUsing DBI 1.607 (for perl 5.008008 on i486-linux-gnu-thread-multi) installed in /usr/local/lib/perl/5.8.8/auto/DBI/Configuring DBD::Oracle for perl 5.008008 on linux (i486-linux-gnu-thread-multi)Remember to actually *READ* the README file! Especially if you have any problems.

Installing on a linux, Ver#2.6

Using Oracle in /tmp/InstantClient/instantclient_11_1

DEFINE _SQLPLUS_RELEASE = "1101000700" (CHAR)

Oracle version 11.1.0.7 (11.1)

Looks like an Instant Client installation, okay

[..省略部分屏幕输出..]

运行make

shawn@shawn-laptop:/tmp/DBD-Oracle-1.22$makecp Oracle.pm blib/lib/DBD/Oracle.pmcp oraperl.ph blib/lib/oraperl.phcp dbdimp.h blib/arch/auto/DBD/Oracle/dbdimp.hI/Driver.xst > Oracle.xsi[..省略部分屏幕输出..]

然后切换成root用户make install

shawn@shawn-laptop:/tmp/DBD-Oracle-1.22$suPassword:root@shawn-laptop:/tmp/DBD-Oracle-1.22#make install[..省略部分屏幕输出..]

至此,DBD::Oracle配置安装完毕,用户可以使用此模块连接Oracle进行相应的操作,


上一篇:Novell数据中心创新全球巡展登陆中国   下一篇:Oracle千万条记录插入与查询小结

收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·Oracle千万条记录插入与查询小结
·实战Oracle数据库备份与恢复
·MySQL配置文件讲解
·Oracle新技术对Linux的影响
·Install MySQL on Fedora 10
·Oracle数据库备份恢复最佳实践
·简述Oracle数据仓库的体系结构
·浅析Oracle数据库集中方法
·为Oracle数据库表选择一个合适的归宿
·解决OracleDBConsoleorcl不能启动,报错误码
·Linux下MySQL性能的检查和调优方法
·Linux下打开MySQL慢查询记录的配置方法
·三架马车保障Oracle网络的连通性
·Oracle为Eclispe工具发布11g企业包
·选择合适的Oracle数据库关闭方法
·Linux菜鸟的两天Oracle安装生活
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·Oracle千万条记录插入与查询小结
·实战Oracle数据库备份与恢复
·MySQL配置文件讲解
·Oracle新技术对Linux的影响
·Install MySQL on Fedora 10
·Oracle数据库备份恢复最佳实践
·简述Oracle数据仓库的体系结构
·浅析Oracle数据库集中方法
·为Oracle数据库表选择一个合适的归宿
·解决OracleDBConsoleorcl不能启动,报错
·Linux下MySQL性能的检查和调优方法
·Linux下打开MySQL慢查询记录的配置方法
  阅读排行
·Linux下安装Oracle数据库完整笔记
·Oracle建表过程初学
·MySQL导入导出.sql文件步骤
·Oracle 建立临时表语法及使用技巧
·Linux平台下启动oracle 11g EM控制台
·RHEL5.1 下安装Oracle 10.2.0.1及常见
·Linux平台下配置MySQL主从复制
·Mysql JDBC驱动版本与Mysql版本的对应
·Linux操作系统下MySQL的卸载、安装全过
·关于MySQL事务处理学习
·Linux系统中Oracle数据库的用户权限
·Linux系统下启动MySQL的命令及相关知识
·手工配置Oracle 10G Enterprise Manage
·Linux平台下修正MySQL中文乱码问题
·MySQL服务器上添加一个允许远程访问的
网摘收藏: