dbd什么意思,如何在Linux环境配置DBD?
Web开发,不外乎两点,一为版面,一为内容dbd什么意思。
论版面,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,主页在}
接下来把如何安装DBD::Oracle的步骤罗列如下,供大家参考。
DBD::Oracle模块既可安装在有Oracle Database的主机上,也可以装在没有Oracle Database的主机上,后者需要安装Oracle Instant Client进行远程数据库连接,本文只关注第二种配置,即DBD::Oracle通过Instant Client实现数据库访问。
第一步: 下载Oracle Instant Client
Oracle Instant Client的主页在}
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的下载地址是}
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进行相应的操作。
更多优质资料尽在考试大论坛 考试大在线题库。