perl 怎样连接 TERADATA?
环境: AIX 6.1 PERLThis is perl, v5.8.8 built for aix-thread-multi打算在 AIX 实现perl连接 teradata
目前已经 安装bteq了。bteq测试正常。
安装 DBD-Teradata-1.52 有如下信息:
cm_etl_1:/db2home/db2inst1/DBD-Teradata-1.52# perlMakefile.PL
*** Configuring DBD::Teradata (feature-limited free edition)...
***************************************************************
*
* !!!NOTE TO INSTALLERS!!!
*
* DBD::Teradata will be built using the following
* directives:
* Libraries: -L/usr/lib -lcliv2 -lnet -lsocket -lresolv -ltdusr.so
* Include files:
* Compile flags: -D__error_t_defined=1
*
* If your CLI2 libraries and/or include files are in another
* location, please update the TDAT_DBD_CLI_LIB and
* TDAT_DBD_CLI_INC environment variables before running
* Makefile.PL.
*
***************************************************************
Checking for DBI, 1.40 or later ... ok
Checking for Math::BigInt, 1.73 or later ... ok
Note (probably harmless): No library found for -lcliv2
Note (probably harmless): No library found for -lnet
Note (probably harmless): No library found for -lsocket
Note (probably harmless): No library found for -lresolv
Note (probably harmless): No library found for -ltdusr.so
Writing Makefile for DBD::Teradata
cm_etl_1:/db2home/db2inst1/DBD-Teradata-1.52# make
cc_r -c -D__error_t_defined=1 -O -DVERSION=\"1.52\"-DXS_VERSION=\"1.52\""-I/usr/opt/perl5/lib/5.8.8/aix-thread-multi/CORE" Teradata.c
"/usr/include/coptypes.h", line 221.10: 1506-236 (W) Macro name VERSION has been redefined.
1500-030: (I) INFORMATION: XS_DBD__Teradata__Cli_tdxs_get_connection: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
Running Mkbootstrap for DBD::Teradata ()
chmod 644 Teradata.bs
rm -f blib/arch/auto/DBD/Teradata/Teradata.so
ld-bhalt:4 -bexpall -G -bnoentry -lpthreads -lc Teradata.o-o blib/arch/auto/DBD/Teradata/Teradata.so
ld: 0711-768 WARNING: Object Teradata.o, section 1, function .strcmp:
The branch at address 0x194 is not followed by a recognized no-op
or TOC-reload instruction. The unrecognized instruction is 0x2C030000.
ld: 0711-768 WARNING: Object Teradata.o, section 1, function .strcmp:
The branch at address 0x3d4c is not followed by a recognized no-op
or TOC-reload instruction. The unrecognized instruction is 0x2C030000.
ld: 0711-768 WARNING: Object Teradata.o, section 1, function .strcmp:
The branch at address 0x4bb4 is not followed by a recognized no-op
or TOC-reload instruction. The unrecognized instruction is 0x7C0300D0.
chmod 755 blib/arch/auto/DBD/Teradata/Teradata.so
cp Teradata.bs blib/arch/auto/DBD/Teradata/Teradata.bs
chmod 644 blib/arch/auto/DBD/Teradata/Teradata.bs
Manifying blib/man3/DBD::Teradata.3
cm_etl_1:/db2home/db2inst1/DBD-Teradata-1.52# make install
Installing /usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/auto/DBD/Teradata/Teradata.so
Installing /usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/auto/DBD/Teradata/Teradata.bs
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/DBD/Teradata.pm
Installing /usr/opt/perl5/man/man3/DBD::Teradata.3
Writing /usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/auto/DBD/Teradata/.packlist
Appending installation info to /usr/opt/perl5/lib/5.8.8/aix-thread-multi/perllocal.pod
======================
但是在运行 perl程序的时候,
$ perlliqd_text.pl
install_driver(Teradata) failed: Can't load '/usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/auto/DBD/Teradata/Teradata.so' for module DBD::Teradata: rtld: 0712-001 Symbol DBCHCL was referenced
from module /usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/auto/DBD/Teradata/Teradata.so(), but a runtime definition
of the symbol was not found.
rtld: 0712-001 Symbol DBCHWAT was referenced
from module /usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/auto/DBD/Teradata/Teradata.so(), but a runtime definition
of the symbol was not found.
rtld: 0712-001 Symbol DBCHREL was referenced
from module /usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/auto/DBD/Teradata/Teradata.so(), but a runtime definition
of the symbol was not found.
rtld: 0712-001 Symbol DBCHINI was referenced
from module /usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/auto/DBD/Teradata/Teradata.so(), but a runtime definition
of the symbol was not found. at /usr/opt/perl5/lib/5.8.8/aix-thread-multi/XSLoader.pm line 70.
at /usr/opt/perl5/lib/site_perl/5.8.8/aix-thread-multi/DBD/Teradata.pm line 5089
Compilation failed in require at (eval 3) line 3.
Perhaps a required shared library or dll isn't installed where expected
at liqd_text.pl line 3
不知道是不是还要再甚至什么环境?请各位指点! 要他自己的驱动吗? 您好, 请问您之前Perl在aix上连接teradata的问题有答案吗?我也碰到一样的问题 回复 3# jc0616
你好,我们现场已经没有teradata数据库了,当时的脚本都已经没有了。
页:
[1]