PerlからDB2へ接続するクライアント環境を構築したい
CentOS7にDB2 V11.1をインストールしました。connect_db2.plというスクリプトを作成し、コマンドラインでは接続できてSQL文を実行できています。しかし、ブラウザからhttp://localhost/cgi-bin/connect_db2.plとしてアクセスすると接続できません。一体、どの環境変数を設定すればよいのでしょうか。
発生している問題・エラーメッセージ
/var/log/httpd/error_log の中身
connect_db2.pl: DBI connect('SAMPLE','db2inst1',...) failed: Total
Environment allocation failure! Did you set up your DB2 client
environment? at /var/www/cgi-bin/connect_db2.pl line 13.
該当のソースコード
lang
1#!/usr/bin/perl 2use warnings; 3use strict; 4use DBI; 5use DBD::DB2::Constants; 6use DBD::DB2; 7 8my $dbh = DBI->connect("dbi:DB2:SAMPLE", "db2inst1", "password") 9or die "SAMPLE DBに接続できません: " . DBI->errstr; 10 11my $sth = $dbh->prepare 12 ("SELECT DEPTNAME,COUNT(*) FROM EMPLOYEE E,DEPT D" 13 . " WHERE E.WORKDEPT=D.DEPTNO GROUP BY DEPTNAME"); 14$sth->execute(); 15 16my ($deptname,$count); 17 18while (($deptname,$count) = $sth->fetchrow()) 19{ 20 printf "%30s | %4d\n",$deptname,$count; 21} 22 23$sth->finish(); 24$dbh->disconnect; 25exit;
試したこと
. ~db2inst1/sqllib/db2profile
をroot権限で行いました。
補足情報(FW/ツールのバージョンなど)
CentOS7.6
DB2 V11.1.4.4
回答1件
あなたの回答
tips
プレビュー