易妖游戏网
您的当前位置:首页AIX 下 db2 存储过程编译环境部署说明V1.2

AIX 下 db2 存储过程编译环境部署说明V1.2

来源:易妖游戏网


AIX 下 db2 存储过程编译环境部署说明

(版本号:1.3)

1. db2 服务器下的部署步骤

1.1 gcc 编译环境部署(仅限于DB2V8.1版本)

1.1.1 登陆DB2服务器查看AIX系统版本:

bootinfo -K

如果是32位系统,则显示32,如果是位系统则显示.

1.1.2 查看DB2服务器AIX版本号:

oslevel -r

显示本文为 AIX5.2.

1.1.3 查看DB2服务器DB2版本:

su - db2admin

db2level

显示db2 版本为 32位,V8.1,符合本文的要求,如果高于8.1 则无需执行本文GCC编译环境的所有操作。

1.1.4 查看DB2服务器是否安装gcc编译器:

rpm -qa

没有显示gcc的相关内容,可以全新安装gcc。

1.1.5 上传gcc 安装文件到DB2服务器:

mkdir -P /tmp/gcc

将gcc-4.0.0-1.aix5.2.ppc.rpm,和libgcc-4.0.0-1.aix5.2.ppc.rpm 两个文件上传到

db2 服务器/tmp/icss/gcc 下。如果是AIX5.3 系统则上传gcc-4.0.0-1.aix5.3.ppc.rpm,和libgcc-4.0.0-1.aix5.3.ppc.rpm 两个文件.

1.1.6 在DB2服务器上安装gcc 程序:

cd /tmp/gcc

rpm -ivh gcc-4.0.0-1.aix5.X.ppc.rpm

rpm -ivh libgcc-4.0.0-1.aix5.X.ppc.rpm

1.1.7 检查gcc安装是否成功

rpm -qa

gcc --version

1.1.8 上传 include文件夹下文件到DB2服务器:

ls -l /home/db2admin/sqllib/include/

如果只有一个asn.h文件则将include 文件夹中的文件上传到db2 服务器的/home/db2admin/sqllib/include下,并改变文件的属组:

chown db2admin:db2grp1 /home/db2admin/sqllib/include/*

1.1.9 修改DB2服务器db2 环境变量

参考db2level ,获得db2实例类型。

对于32位实例,需要使用db2set命令设置

DB2_SQLROUTINE_COMPILE_COMMAND 注册表变量如下:

su - db2admin

注意:引号内为一行内容,不要拆分。

db2set DB2_SQLROUTINE_COMPILE_COMMAND=\"gcc -g -I/home/db2admin/sqllib/include SQLROUTINE_FILENAME.c -o SQLROUTINE_FILENAME -L/home/db2admin/sqllib/lib -ldb2 -shared\"

对于位实例,需要使用db2set命令设置

DB2_SQLROUTINE_COMPILE_COMMAND 注册表变量如下:

su - db2admin

db2set DB2_SQLROUTINE_COMPILE_COMMAND=\"gcc -g -maix -I/home/db2admin/sqllib/include SQLROUTINE_FILENAME.c -o SQLROUTINE_FILENAME -L/home/db2admin/sqllib/lib -ldb2 -shared\"

1.1.10 检查db2环境变量设置是否成功

su – db2admin

db2set

如果有以下一行信息说明设置成功:

DB2_SQLROUTINE_COMPILE_COMMAND=gcc -I/home/db2admin/sqllib/include

SQLROUTINE_FILENAME.c

-g -o

SQLROUTINE_FILENAME -L/home/db2admin/sqllib/lib -ldb2 -shared

至此db2 存储过程编译环境已经部署完毕,下一步安装写日志函数put_line(),可以验证存储过程编译环境部署是否正确。

1.2 put_line()安装步骤

1.2.1 上传put_line_aix文件夹到DB2服务器/tmp/gcc 下并改变属组:

chown -R db2admin:db2grp1 /tmp/gcc

1.2.2 建立数据库连接

su - db2admin

cd /tmp/gcc/put_line_aix

db2 connect to stma user db2admin using db2admin

1.2.3 创建函数

db2 -tvf crefunc.sql

1.2.4 上传put_line 文件

1.2.4.1 32位DB2

将文件put_line放到/home/db2admin/sqllib/function/ 目录下,并改变属组:

cp put_line /home/db2admin/sqllib/function/

chown db2admin:db2grp1 /home/db2admin/sqllib/function/put_line

1.2.4.2 位DB2

将文件AIXBIT/put_line放到/home/db2admin/sqllib/function/ 目录下,

并改变属组:

cp put_line /home/db2admin/sqllib/function/

chown db2admin:db2grp1 /home/db2admin/sqllib/function/put_line

1.2.5 put_line()函数安装验证

1)创建测试存储过程

su - db2admin

cd /tmp/gcc/put_line_aix

db2 connect to stma user db2admin using db2admin

db2 -td@ -vf testcase.sql

2)执行测试存储过程

db2 \"call testcase()\"

3)验证函数输出。

查看/tmp目录下是否存在类似SQLPROC_DEBUG_FILE.*这样的文件。

ls -lt|pg

4)删除测试存储过程

db2

connect to stma user db2admin using db2admin

drop PROCEDURE TESTCASE

2. was服务器下的部署步骤

2.1 gcc 编译环境部署(仅限于DB2V8.1版本)

与上文db2下部署相同(1.1.1~1.1.10)

2.2 put_line()安装步骤

2.2.1 上传put_line_aix文件夹到WAS服务器/tmp/gcc 下并改变属组:

chown -R db2admin:db2grp1 /tmp/gcc

2.2.2 上传put_line 文件

2.2.2.1 32位DB2

将文件put_line放到/home/db2admin/sqllib/function/ 目录下,并改变属组:

cp put_line /home/db2admin/sqllib/function/

chown db2admin:db2grp1 /home/db2admin/sqllib/function/put_line

2.2.2.2 位DB2

将文件AIXBIT/put_line放到/home/db2admin/sqllib/function/ 目录下,

并改变属组:

cp put_line /home/db2admin/sqllib/function/

chown db2admin:db2grp1 /home/db2admin/sqllib/function/put_line

因篇幅问题不能全部显示,请点此查看更多更全内容