作者:zlj2208
修改日期:2010年01月09日
转载请注明转自http://zlj2208.cublog.cn/
1. 系统环境
系统版本:Fedora6 X86_64
DB2版本:DB2 v9.5.0.3
Perl版本: v5.8.8(系统自带)
Perl-DBI版本:perl-DBI-1.52-1.fc6(系统自带)
DBD-DB2版本:DBD-DB2-1.76
2. 安装DBD-DB2
下载地址:http://search.cpan.org/~ibmtordb2/DBD-DB2-1.76/
导入下面环境变量:
根据自己的系统安装的路径,导入相应路径。
export LD_LIBRARY_PATH=/opt/ibm/db2/V9.5/lib64
export DB2_HOME=/opt/ibm/db2/V9.5
安装步骤:
perl Makefile.PL
make
make test
make install
模块安装位置:
cat /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/DB2/.packlist
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/Bundle/DBD/DB2.pm
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/DBD/DB2.pm
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/DBD/DB2.pod
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/DBD/DB2/Constants.pm
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/DB2/Constants/Constants.bs
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/DB2/Constants/Constants.so
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/DB2/Constants/autosplit.ix
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/DB2/DB2.bs
/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/DB2/DB2.so
/usr/share/man/man3/Bundle::DBD::DB2.3pm
/usr/share/man/man3/DBD::DB2.3pm
3. 测试脚本.
1). perl连接远程DB2服务器:
cat perl_connect_to_remote_db2.pl
#!/usr/bin/perl -w
$userid="db2inst1";
$password="passwd";
$db="sample";
$port=50000;
#$hostname="localhost";
$hostname="xxx.xxx.xxx.xxx";
$protocol="tcpip";
$conn_string = "dbi:DB2:DATABASE=$db; HOSTNAME=$hostname; PORT=$port; PROTOCOL=$protocol; UID=$userid; PWD=$password;";
use DBI;
$dbh = DBI->connect ("$conn_string",{RaiseError => 0}) or
die "Can't connect to database $hostname:$db: $DBI::errstr";
my $stmt = "select * from employee";
my $sth = $dbh->prepare($stmt);
$sth->execute();
my $col1;
$sth->bind_col(1,\$col1);
while ($sth->fetch) { print "$col1\n"; }
$sth->finish();
$dbh->disconnect();
2). perl连接本地DB2服务器:
cat perl_connect_to_local_db2.pl
#!/usr/bin/perl -w
$userid="db2inst1";
$password="passwd";
$db="sample";
use DBI;
$dbh = DBI->connect ("dbi:DB2:$db", "$userid", "$password") or
die "Can't connect to $db database: $DBI::errstr";
my $stmt = "select * from employee";
my $sth = $dbh->prepare($stmt);
$sth->execute();
my $col1;
$sth->bind_col(1,\$col1);
while ($sth->fetch) { print "$col1\n"; }
$sth->finish();
$dbh->disconnect()
;
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com