Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103695853
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-04-14 12:57:36

   来源:csdn    作者:lisiyong

1、DB2 命令行处理器中命令选项的介绍

环境 产品:DB2 UDB

平台:跨平台

版本:Version 6.1,Version 7.1

问题 介绍 DB2 命令行状态下有关命令选项的用途及设置方法。

解答 在 DB2 命令行处理器中使用命令 db2 list command options,可得到如下输出:

命令行处理器选项设置

后端进程等待时间(秒) (DB2BQTIME) = 1

连接至后端的重试次数 (DB2BQTRY) = 60

请求队列等待时间(秒) (DB2RQTIME) = 5

输入队列等待时间(秒) (DB2IQTIME) = 5

命令选项 DB2OPTIONS) =

选项 说明 当前设置

------ ------------------------------- ------------

-a 显示 SQLCA OFF

-c 自动落实 ON

-e 显示 SQLCODE/SQLSTATE OFF

-f 读取输入文件 OFF

-l 将命令记录到历史文件中 OFF

-n 除去换行字符 OFF

-o 显示输出 ON

-p 显示交互式输入提示 ON

-r 将输出保存到报告文件 OFF

-s 在命令出错时停止执行 OFF

-t 设置语句终止字符 OFF

-v 回送当前命令 OFF

-w 显示 FETCH/SELECT 警告信息 ON

-x 不打印列标题 OFF

-z 将所有输出保存到输出文件 OFF

这些选项的具体功能及其缺省设置为:

.a 显示 SQLCA 的数据,缺省为 OFF。

.c 是否自动落实 SQL 命令,缺省为 ON。

.e {c|s} 显示 SQLCODE 或 SQLSTATE,缺省为 OFF。

.f 文件名 将命令的输入从标准输入指定到某一文件,缺省为 OFF。

注:命令“db2 < 文件名”与“db2 -f 文件名”作用相同。

.l 文件名 将命令记录到历史文件中,缺省为 OFF。

.n 除去换行字符,缺省为 OFF。

.o 将输出数据及信息送到标准输出,缺省为 ON。

.p 在交互方式下显示命令行处理器的提示信息,缺省为 ON。

.r 将输出保存到指定文件中,缺省为 OFF。

.s 执行批处理文件中或交互方式下的命令出错时即停止执行操作,缺省为 OFF。

.t 设置语句终止字符,缺省为 OFF。

.v 回送当前命令到标准输出,缺省为 OFF。

.w 显示 FETCH 或 SELECT 警告信息,缺省为 ON。

.x 不打印列标题,缺省为 OFF。

.z 文件名 将所有输出保存到输出文件,缺省为 OFF。

以上选项不要求顺序并可以进行组合使用。若要修改其缺省设置,将选项设为打开,只需在选项前加“+”;而将选项关闭则加“-”。

通过设置环境变量 DB2OPTIONS,也可对这些选项进行设置。如在 Intel 系统下使用:set DB2OPTIONS='+c -a';在 UNIX 系统下使用:export DB2OPTIONS='+c -a'。但命令行处理器选项设置的优先级高于 DB2OPTIONS 的设置。

另外使用 db2 update command options 命令,同样可以实现通过交互式输入模式或命令文件改变选项设置的功能。如:

db2 update command options using c off

2、DB2备份历史文件损坏

环境 产品:DB2

平台:跨平台

版本:DB2 5.2;DB2 6.1

问题 DB2备份历史文件损坏

解答 如果在作数据库备份操作时遇到DB2备份历史文件db2rhist.asc损坏, 错误代码SQL2048的错误,可按照如下步骤操作: 1. 先在NODE000x/SQL000x目录下找到该文件,及其备份文件db2rhist.bak,将db2rhist.asc文件移动到其他目录中。

2. 重新运行备份命令。此命令仍会报同样的错误,但同时DB2系统会自动用db2rhist.bak重新生成db2rhist.asc文件。

3. 再次运行备份命令,它将能够正确运行。

如果按照上面的步骤操作后,仍出同样的错误,则再按如下操作: 1. 先在NODE000x/SQL000x目录下找到该文件,及其备份文件db2rhist.bak,将这两个文件移动到其他目录中。

2. 重新运行备份命令。此命令仍会报同样的错误,但同时DB2系统会自动重新生成这两个文件。

3. 再次运行备份命令,它将能够正确运行。

3、DB2从7.2版本开始支持存储过程的发布,即可以将一个数据库上已编译好的存储过程抽取并安装到其它数据库上,目标数据库所在的服务器上不再需要c编译器。

解答 发布存储过程请按以下步骤:

1. 如果数据库是从7.1版本打补丁后升为7.2版本,请用

db2updv7 -d 数据库名

使DB2可以抽取或安装已编译好的存储过程;

2. 在源数据库,编译好存储过程;

3. 在源数据库,运行

db2 "get routine into 文件名 from procedure 存储过程名"

抽取存储过程;

4. 上传文件至目标服务器;

5. 在目标服务器端,运行

db2 "put routine from 文件名"

安装已编译好的存储过程。

阅读(563) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~