Linux下安装DBD::Oracle、DBI和Ora2Pg

简介:

介质下载路径:

DBI:http://www.cpan.org/modules/by-module/DBI/

DBD:http://www.cpan.org/modules/by-module/DBD/

Ora2Pg:https://sourceforge.net/projects/ora2pg/files/

要求:perl 版本5.8以上, perl -v查看版本

使用root用户进行安装

1、安装DBI

    [root@rhel6 DBI-1.627]$ perl Makefile.PL 

    

    *** Your LANG environment variable is set to 'en_US.UTF-8'

    *** This may cause problems for some perl installations.

    *** If you get test failures, please try again with LANG unset.

    *** If that then works, please email dbi-dev@perl.org with details

    *** including the output of 'perl -V'

    

    Your perl was compiled with gcc (version 4.4.7 20120313 (Red Hat 4.4.7-14)), okay.

    Creating test wrappers for DBD::Gofer:

    t/zvg_01basics.t 

    t/zvg_02dbidrv.t 

    t/zvg_03handle.t 

    t/zvg_04mods.t 

    t/zvg_05concathash.t 

    t/zvg_06attrs.t 

    ......

    [root@rhel6 DBI-1.627]$ make

    /usr/bin/perl -MExtUtils::Command -e 'mkpath' -- blib/lib/DBI

    rm -f blib/lib/DBI/Changes.pm

    cp Changes blib/lib/DBI/Changes.pm

    cp Driver_xst.h blib/arch/auto/DBI/Driver_xst.h

    cp lib/DBD/Proxy.pm blib/lib/DBD/Proxy.pm

    cp lib/DBI/Gofer/Response.pm blib/lib/DBI/Gofer/Response.pm

    cp lib/DBI/Util/_accessor.pm blib/lib/DBI/Util/_accessor.pm

    cp lib/DBI/Gofer/Transport/Base.pm blib/lib/DBI/Gofer/Transport/Base.pm

    cp lib/DBD/DBM.pm blib/lib/DBD/DBM.pm

    cp DBIXS.h blib/arch/auto/DBI/DBIXS.h

    cp dbixs_rev.pl blib/lib/dbixs_rev.pl

    cp lib/DBI/Gofer/Serializer/DataDumper.pm blib/lib/DBI/Gofer/Serializer/DataDumper.pm

    cp lib/DBI/Const/GetInfoType.pm blib/lib/DBI/Const/GetInfoType.pm

    cp lib/DBI/DBD/Metadata.pm blib/lib/DBI/DBD/Metadata.pm

    cp lib/DBD/Gofer/Transport/pipeone.pm blib/lib/DBD/Gofer/Transport/pipeone.pm

    cp lib/DBI/Const/GetInfo/ODBC.pm blib/lib/DBI/Const/GetInfo/ODBC.pm

    cp lib/DBI/ProfileDumper/Apache.pm blib/lib/DBI/ProfileDumper/Apache.pm

    cp lib/DBD/File/Roadmap.pod blib/lib/DBD/File/Roadmap.pod

    ......

    [oracle@rhel6 DBI-1.627]$ make test(可选)

    PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t

    t/01basics.t .................... ok       

    t/02dbidrv.t .................... ok     

    t/03handle.t .................... ok       

    t/04mods.t ...................... ok     

    t/05concathash.t ................ ok     

    t/06attrs.t ..................... ok       

    t/07kids.t ...................... ok     

    [root@rhel6 DBI-1.627]# make install

    Files found in blib/arch: installing files in blib/lib into architecture dependent library tree

    Installing /usr/local/lib64/perl5/auto/DBI/DBI.bs

    Installing /usr/local/lib64/perl5/auto/DBI/dbixs_rev.h

    Installing /usr/local/lib64/perl5/auto/DBI/dbivport.h

    Installing /usr/local/lib64/perl5/auto/DBI/DBIXS.h

    Installing /usr/local/lib64/perl5/auto/DBI/DBI.so

    Installing /usr/local/lib64/perl5/auto/DBI/dbipport.h

    Installing /usr/local/lib64/perl5/auto/DBI/dbi_sql.h

    Installing /usr/local/lib64/perl5/auto/DBI/dbd_xsh.h

    Installing /usr/local/lib64/perl5/auto/DBI/Driver_xst.h

    Installing /usr/local/lib64/perl5/auto/DBI/Driver.xst

    Installing /usr/local/lib64/perl5/dbixs_rev.pl

    ......

2、安装DBD:Oracle

    配置环境变量

    export ORACLE_BASE=/u02/app/oracle

    export ORACLE_HOME=$ORACLE_BASE/product/11.2.4/db1

    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

    安装

    [root@rhel6 DBD-Oracle-1.74]# perl Makefile.PL 

    Multiple copies of Driver.xst found in: /usr/local/lib64/perl5/auto/DBI/ /usr/lib64/perl5/auto/DBI/ at Makefile.PL line 39

    Using DBI 1.627 (for perl 5.010001 on x86_64-linux-thread-multi) installed in /usr/local/lib64/perl5/auto/DBI/

    

    Configuring DBD::Oracle for perl 5.010001 on linux (x86_64-linux-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 /u02/app/oracle/product/11.2.4/db1

    DEFINE _SQLPLUS_RELEASE = "1102000400" (CHAR)

    Oracle version 11.2.0.4 (11.2)

    Found /u02/app/oracle/product/11.2.4/db1/rdbms/lib/ins_rdbms.mk

    Using /u02/app/oracle/product/11.2.4/db1/rdbms/lib/ins_rdbms.mk

    Your LD_LIBRARY_PATH env var is set to '/u02/app/oracle/product/11.2.4/db1/lib:'

    ......

    [root@rhel6 DBD-Oracle-1.74]# make

    cp lib/DBD/Oracle/Troubleshooting/Cygwin.pod blib/lib/DBD/Oracle/Troubleshooting/Cygwin.pod

    cp lib/DBD/Oracle.pm blib/lib/DBD/Oracle.pm

    cp Oracle.h blib/arch/auto/DBD/Oracle/Oracle.h

    cp lib/DBD/Oracle/Troubleshooting/Hpux.pod blib/lib/DBD/Oracle/Troubleshooting/Hpux.pod

    cp lib/DBD/Oracle/Troubleshooting/Vms.pod blib/lib/DBD/Oracle/Troubleshooting/Vms.pod

    cp lib/DBD/Oracle/Troubleshooting/Linux.pod blib/lib/DBD/Oracle/Troubleshooting/Linux.pod

    cp lib/DBD/Oracle/GetInfo.pm blib/lib/DBD/Oracle/GetInfo.pm

    cp lib/DBD/Oracle/Troubleshooting.pod blib/lib/DBD/Oracle/Troubleshooting.pod

    cp dbdimp.h blib/arch/auto/DBD/Oracle/dbdimp.h

    cp ocitrace.h blib/arch/auto/DBD/Oracle/ocitrace.h

    cp lib/DBD/Oracle/Troubleshooting/Sun.pod blib/lib/DBD/Oracle/Troubleshooting/Sun.pod

    cp lib/DBD/Oracle/Troubleshooting/Macos.pod blib/lib/DBD/Oracle/Troubleshooting/Macos.pod

    cp lib/DBD/Oracle/Troubleshooting/Aix.pod blib/lib/DBD/Oracle/Troubleshooting/Aix.pod

    cp lib/DBD/Oracle/Object.pm blib/lib/DBD/Oracle/Object.pm

    cp lib/DBD/Oracle/Troubleshooting/Win64.pod blib/lib/DBD/Oracle/Troubleshooting/Win64.pod

    cp lib/DBD/Oracle/Troubleshooting/Win32.pod blib/lib/DBD/Oracle/Troubleshooting/Win32.pod

    cp mk.pm blib/arch/auto/DBD/Oracle/mk.pm

    ......

    [root@rhel6 DBD-Oracle-1.74]# make test(可选)

    PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t

    t/000-report-versions-tiny.t .. # 

    # 

    # Generated by Dist::Zilla::Plugin::ReportVersions::Tiny v1.10

    # perl: 5.010001 (wanted 5.006) on linux from /usr/bin/perl

    # 

    # B                                             => 1.22       (want any version)

    # Carp                                          => 1.11       (want any version)

    # DBI                                           => 1.627      (want 1.51)   

    ......

    [root@rhel6 DBD-Oracle-1.74]# make install

    Files found in blib/arch: installing files in blib/lib into architecture dependent library tree

    Installing /usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.h

    Installing /usr/local/lib64/perl5/auto/DBD/Oracle/dbdimp.h

    Installing /usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.bs

    Installing /usr/local/lib64/perl5/auto/DBD/Oracle/mk.pm

    Installing /usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so

    Installing /usr/local/lib64/perl5/auto/DBD/Oracle/ocitrace.h

    Installing /usr/local/lib64/perl5/DBD/Oracle.pm

    Installing /usr/local/lib64/perl5/DBD/Oracle/GetInfo.pm

    Installing /usr/local/lib64/perl5/DBD/Oracle/Object.pm

    Installing /usr/local/lib64/perl5/DBD/Oracle/Troubleshooting.pod

    Installing /usr/local/lib64/perl5/DBD/Oracle/Troubleshooting/Win64.pod

    Installing /usr/local/lib64/perl5/DBD/Oracle/Troubleshooting/Sun.pod

    Installing /usr/local/lib64/perl5/DBD/Oracle/Troubleshooting/Win32.pod

    Installing /usr/local/lib64/perl5/DBD/Oracle/Troubleshooting/Hpux.pod

    ......

3、检查脚本list.pl

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@rhel6 ~] # cat list.pl 
#!/usr/bin/perl
use strict;
use ExtUtils::Installed;
my $inst= ExtUtils::Installed->new();
my @modules = $inst->modules();
foreach(@modules)
{
         my $ver = $inst->version($_) ||  "???" ;
         printf ( "%-12s --  %s\n" , $_, $ver);  
}
exit ;
[root@rhel6 ~] # perl list.pl 
DBD::Oracle  --  1.74
DBI          --  1.627
Perl         --  5.10.1

    DBD::Oracle和DBI安装完成

4、安装ora2pt

    [root@rhel6 ora2pg-17.6]$ perl Makefile.PL 

    Checking if your kit is complete...

    Looks good

    Writing Makefile for Ora2Pg

    

    Done...

    ------------------------------------------------------------------------------

    Please read documentation at http://ora2pg.darold.net/ before asking for help

    ------------------------------------------------------------------------------

    Now type: make && make install

    [root@rhel6 ora2pg-17.6]# make && make install 

    Installing /usr/local/share/perl5/Ora2Pg.pm

    Installing /usr/local/share/perl5/Ora2Pg/PLSQL.pm

    Installing /usr/local/share/perl5/Ora2Pg/MySQL.pm

    Installing /usr/local/share/perl5/Ora2Pg/GEOM.pm

    Installing /usr/local/share/man/man3/ora2pg.3

    Installing /usr/local/bin/ora2pg

    Installing /usr/local/bin/ora2pg_scanner

    Installing default configuration file (ora2pg.conf.dist) to /etc/ora2pg

    Appending installation info to /usr/lib64/perl5/perllocal.pod

检查,DBD::Oracle DBI Ora2Pg安装完成

    [root@rhel6 ~]# perl list.pl 

    DBD::Oracle  --  1.74

    DBI          --  1.627

    Ora2Pg       --  17.6b

    Perl         --  5.10.1

使用Ora2Pg从Oracle导数据到PostgreSQL参考:http://hbxztc.blog.51cto.com/1587495/1880339

参考文档:

http://www.askoracle.org/oracle/backup/1009.html

http://blog.sina.com.cn/s/blog_a32eff280102vmpn.html





     本文转自hbxztc 51CTO博客,原文链接:http://blog.51cto.com/hbxztc/1879227,如需转载请自行联系原作者




相关文章
|
8月前
|
Ubuntu Linux
计算机基础知识:linux系统怎么安装?
在虚拟机软件中创建一个新的虚拟机,并选择相应操作系统类型和硬盘空间大小等参数。将下载的 ISO 镜像文件加载到虚拟机中。启动虚拟机,进入安装界面,并按照步骤进行安装。安装完成后,可以在虚拟机中使用 Linux 系统。
|
6月前
|
安全 Linux iOS开发
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
418 6
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
|
6月前
|
消息中间件 Kafka Linux
Linux下安装Kafka 3.9.1
本文介绍Kafka 3.9.1版本的安装与配置,包括通过ZooKeeper或KRaft模式启动Kafka。涵盖环境变量设置、日志路径修改、集群UUID生成、存储格式化及服务启停操作,适用于Linux环境下的部署实践。
764 0
|
8月前
|
网络协议 关系型数据库 Linux
【App Service Linux】在Linux App Service中安装 tcpdump 并抓取网络包
在App Service for Linux环境中,无法像Windows一样直接使用网络排查工具抓包。本文介绍了如何通过TCPDUMP在Linux环境下抓取网络包,包括SSH进入容器、安装tcpdump、执行抓包命令及下载分析文件的完整操作步骤。
390 5
|
8月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
8月前
|
Ubuntu 安全 Linux
Linux这5款微型发行版,体积小+精简,比win7运行还快,值得安装
以上5款微型发行版体积小且精简,如果你有台旧电脑,不妨试试?
|
8月前
|
安全 Ubuntu Linux
如何安装Linux操作系统?
此时,您可以选择重新启动计算机,然后从硬盘上的Linux系统启动。以上是一个大致的安装过程。请注意,不同的Linux发行版可能会在细节上有所差异,因此在进行安装之前,请确保您阅读并理解了相应发行版的安装指南或文档。
|
8月前
|
Ubuntu Linux 数据安全/隐私保护
Win10安装Linux子系统教程!如何在Win10系统中安装Ubuntu!
登录系统后,输入cd /返回上一级,然后再输入“ls”查看一下系统文件目录,看看对不对!
|
8月前
|
Ubuntu Linux Shell
手把手教你安装适用于Linux的Windows子系统——Ubuntu
重启完成,你看看重新打开Ubuntu是不是发生了变化,等待几分钟,系统配置完成,根据提示设置用户名和密码即可