频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

DB2数据提取转化的一个脚本

来源: 作者: 出处:巧巧读书 2006-10-11 进入讨论组

 为把数据从大型机迁移到AIX平台上的DB2 UDB , 其过程通常事实这样的:登录到大型机,提取数据到一个文件中,ftp文件到AIX机器上, 然后将数据装载到DB2 UDB。 这需要两个不同的工作环境。

替代方案是:通过只使用一个脚本,在DB2 UDB的AIX环境下我可以完成整个过程。这个过程非常快, 不会加重大型机或AIX环境的负担。

你所需要做的是使用大型机连接,再用EXPORT命令来听取数据。 例如:

db2 connect to DB2S390 USER xxxxxx USING yyyy

db2 "export to exportfile.ixf of IXF select * from SYSIBM.SAMPLE"

你可以再将输出的文件导入装有AIX系统的DB2 UDB中。我已经写了一个在AIX上的Korn shell脚本, 只需给出图表名称,用户名和密码,就可用一个命令从大型机上提取和加载数据。同时值得提出的是使用db2look命令,你可以用大型机的DB2 Connect连接作为数据提取DDL。

#!/bin/ksh

#   Extract data from Mainframe and Load into the

#   Specified Table in the DDHAP00 Database

#

export LOADFILE="/udb/db2aix01/file/file1/$1"

export USERID=$2

export PSWD=$3

export CurrentPWD=$PWD  # Save current directory

echo 'date'

# Connect to mainframe

db2 CONNECT TO DB2S390 USER $USERID using $PSWD

echo "Extracting data from mainframe..."

# Extract data from mainframe

db2 "export to $LOADFILE.ixf of IXF select * from DBDEV.$1"

echo 'date'

echo "Extract completed"

# Disconnect from mainframe

db2 DISCONNECT DB2S390;

# Connect to database on AIX

db2 CONNECT TO DDHAP00 USER xxxxx USING xxxxxx;

# Clear load messages file

cp /dev/nul /udb/db2aix01/file/file1/Load_$1.msg

echo 'date'

echo "Loading data..."

# Load data from flat file

db2 "LOAD FROM $LOADFILE.ixf OF IXF MODIFIED BY pagefreespace=0

totalfreespace=0 ROWCOUNT 999999999 WARNINGCOUNT 9 MESSAGES Load_$1.msg

REPLACE INTO DBO.$1 STATISTICS NO INDEXING MODE AUTOSELECT"

echo 'date'

echo "End of Load"

db2 DISCONNECT DDHAP00;

# Reset to previous directory

cd $PWD

http://www.qqread.com/db2/q224338.html 更多文章 更多内容请看脚本攻击和防范DB2DB2中的数据处理专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
最新论坛文章
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章