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

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-04-12 10:08:58

developerWorks
 

级别: 初级

Raul F. Chong, DB2 Universal Database Consulting Services, IBM 多伦多实验室

2003 年 7 月 01 日

Raul Chong 继续对与 DB2 UDB Express 一起提供的 GUI 工具进行介绍。在第 2 部分,他讲到了如何利用这些 GUI 工具自动化数据库任务和进行基本的性能调优,他还讲到了与这些 GUI 工具本身相关的故障诊断与排除。

在对 DB2 UDB Express GUI 工具简介的 第 1 部分 中,我描述了如何使用一些工具来执行基本的数据库操作、控制对数据库对象的访问以及建立连接性。在第 2 部分,我将向您展示如何自动化数据库任务,如何执行一些基本的性能调优,以及如何解决在使用 DB2 UDB GUI 工具时经常碰到的一些问题。与第 1 部分一样,我假设您要么是关系数据库管理系统(RDBMS)的新手,要么虽然使用过其他的数据库产品,例如 MS Access、MS Fox Pro 或 MS SQL Server,但是还没有使用过 DB2 UDB。







任务只不过是包含了 DB2、SQL 或者操作系统命令的脚本,它与时间表和通知(notification)相关联。利用 Task Center 可以自动化一般数据库任务的执行和实现一些条件逻辑。

要使用 Task Center,必须有一个 'Tools Catalog'。这个 tools catalog 包含了有关管理任务的信息,这里管理任务指的是使用 Task Center 和 Control Center 进行配置的任务。如果遇到与 Tools Catalog 相关的错误,请参考 GUI 工具故障诊断与排除部分

还应注意的是,为了通过任务中心发送邮件或者页面,必须在机器中设立一个 SMTP Server 。

下面的图提供了一个例子,展示了如何建立一个在 2003 年 5 月 29 日 23:00 自动执行一次的任务。这个任务将被称为 'MyFirstTask',假设任务 'SecondTask 事先已创建好。MyFirstTask 任务将运行在服务器 'RAULCHONG' 的实例 'DB2' 上,在用户 'db2admin' 的名下。该任务执行到示例数据库的连接,接着对 department 表进行查询。如果该任务成功,它将把一个条目写入到日志 GUI 工具中,如果失败,它将通过发送邮件通知 'Raul F. Chong'。除了进行通知外,当任务成功时,它将调用 'SecondTask' 任务,当任务失败时,它将删除自己。至于对这个任务的授权,用户 'db2admin' 可以读、写以及执行(运行)这个任务。

注意,在下面的图 1 中,每条语句都使用 '@' 隔开。之所以使用这个终结符,是因为域 DB2 statement termination character 被设置为 '@' 值。

Task 和 Command Script 标签
Task and Command Script tabs

在如 2 所示的 Run properties 标签页中,您可以定义什么是一个成功的事件。通常,如果一个任务返回的值为 0,则被认为是成功的。如果一个任务可以返回多个编码来表示成功,那么需要定义一个成功编码集。在本例中定义了两个成功编码集(只是为了演示):

  • My_Success_Code (条件是返回编码为 0,图中没有显示)和
  • My_Second_Success_Code(条件是返回编码大于 100)

Run properties 标签
Run properties tab

3 中,注意 Group 标签是灰色的。只有在选择的任务是 'Grouping Task'时,该标签才可用。(参见 图 1 中的 'type'字段)。Group 标签可用于指定一个包含其他任务的任务。

Schedule 标签页上,我们指定该任务只能在 2003 年 5 月 29 日 23:00 运行一次,然后点击 Add 将该任务添加到计划任务列表中。这里还必须指定用于运行该任务的用户 id 和 密码。

Group 和 Schedule 标签
Group and schedule tabs

接下来,在 Notification 标签页的左边面板中,指定当任务成功或失败时应该通知谁。一旦选择了通知的对象,就可以点击 Add 将一个条目添加到通知列表中( Notification 标签页的右面板). 在 4 中,我们选择了两条通知:如果任务成功,那么就在 Journal GUI 工具中创建一个条目;如果任务失败,那么就将一封电子邮件发送给 Raul F. Chong (从联系人名单中获得)。

Notification 标签
Notification tab

5 我们可以看到, Task Actions 标签与上面的 Notification 标签类似,不同的是,在这里我们不是指定当任务成功或失败时该与谁联系,而是指定当任务成功或失败时该做些什么。对于 图 5,我们指定,当任务成功时应该执行另一个任务,即 'SecondTask';当任务失败时,应该删除任务 'MyFirstTask'。

Task Actions 标签
Task Actions tab

Security 标签页上,可以为任务的用户指定权限。例如,用户 'db2admin' 有执行 MyFirstTask 任务的所有权限。

Security 标签
Security tab

最后,图 7 显示了当前在本系统中建立的两个任务的概要。

7. 使用 Task Center 自动化数据库操作(续)
Using the Task Center to automate database operations (continued)

一旦触发了任务,就可以使用 8 中所示的 Journal GUI 工具查看任务的执行结果。对于当前的例子,我们可以看到 'MyFirstTask 和 'Second_Task' 这两个任务都执行成功。

Task History 标签
The Journal - Task History Tab

如果您选择上面列出的任何一个任务条目,并在其上双击鼠标,就可以获得有关该任务执行结果的更详细的信息。下面的图 9 和图 10 逐个显示了 Journal GUI 工具的 4 个标签在显示任务 'MyFirstTask'的细节时的情景。

9. Journal——Results 和 Command Script 标签
The Journal - Results and Command Script tabs

10. Journal——Output 和 Task actions 标签
The Journal - Output and Task actions tabs







您可以使用两个 DB2 UDB GUI 工具以最小的气力来显著地提高数据库的性能。这两个工具是:

  • Configuration Advisor
  • Design Advisor

图 11 和图 12 中显示的 Configuration Advisor,将根据它向您提出的一些与您的 DB2 UDB 服务器相关的问题(例如可用的内存,工作负荷的类型,等等)来确定一些 DB2 配置参数的最佳值。

11. Configuration Advisor
The Configuration Advisor

12. Configuration Advisor (续)
The Configuration Advisor (continued)

Design Advisor 为您提供了一种轻松、快捷的方法来确定哪些指标对于工作负荷来说是最佳的。您可以先在数据库上运行应用程序,将所有要执行的 SQL 语句都放在缓存中。接下来,运行 Design Advisor,从内存中获取这些语句,并确定必需的指标。图 13 和图 14 显示了 Design Advisor。

13. Design Advisor
The Design Advisor

14. Design Advisor (续)
The Design Advisor (continued)







在使用 GUI 工具时,可能会碰到 4 种常见的错误:

要解决这个问题,可以打开 Control Center,点击要针对的实例,在其上点击右键并选择 Start,如图 15 所示:

15. 故障诊断与排除:启动一个实例
Troubleshooting: Starting an instance

这个问题会影响到远程 GUI 管理。为了确认 DAS 正在运行,从 Command Line Processor 或者命令窗口执行 db2admin start 命令,如图 16 所示:

16. 故障诊断与排除:使用 Command Line Processor (CLP)测试 DB2 Admin Server 是否正在运行
Troubleshooting:  Using the Command Line Processor (CLP) to test if the DB2 Admin Server is running

如果 DAS 还没有启动,上述命令将启动它。如果 DAS 已经启动,那么您将收到如图 16 所示的信息。

如果您收到一条像 17 中那样的消息,那么很可能您的 Tools Catalog 数据库还没有创建。一般来说这个数据库是在安装的时候创建的。

17. 故障诊断与排除:Tools Catalog 还没有创建
Troubleshooting:  Tools Catalog had not been created

要使用 GUI 工具创建 Tools Catalog ,请从任意一个 GUI Tool 中选择 Tools -> Tools Settings -> Scheduler Settings,如图 18 所示。接下来,在 Defining Tools Catalog 区域下点击 Create New按钮,您将得到如 19所示的一个窗口。

18. 故障诊断与排除:创建 Tools Catalog 数据库
Troubleshooting:  Creating the Tools Catalog database

19. 故障诊断与排除:创建 Tools Catalog 数据库(续)
Troubleshooting:  Creating the Tools Catalog database (continued)

注意,大多数 GUI 工具都会提供一个 Show Command 按钮,通过这个按钮可以显示发送给 DB2 的实际命令。这些命令可以从 Command Center 执行。

如果您收到这样一条错误消息,它指出您需要连接到(attach to)一个实例,那么选择要针对的实例,在其上点击右键并选择 'Attach',如图 20 所示:

20. 故障诊断与排除:连接到一个实例
Troubleshooting:  Attaching to an instance







在本文中,与 第 1 部分 一样,我们向您介绍了一些用于执行基本数据库操作的 DB2 UDB Express GUI 工具。我们展示了如何自动化一些数据库任务以及如何进行一些基本的 DB2 调优。我们还展示了在使用 DB2 UDB GUI 工具时可能碰到的一些典型的错误。虽然在本文中我们使用的是 DB2 UDB Express GUI 工具,但是请注意,这些工具在整个 DB2 UDB 家族中都是一样的。通过本文我们展示了这些工具是多么的强大和易于使用。我们希望这些介绍能让您在使用 DB2 UDB 时感到更加得心应手。



  • 您可以参阅本文在 developerWorks 全球站点上的 英文原文.

  • 如果您想学习更多关于 DB2 UDB 环境的知识,我建议您仔细阅读 对 DB2 UDB V8 for UNIX、Linux 和 Windows 的生动简介。DB2 UDB 新手可以通过这篇文章很好地了解 DB2 UDB。

  • 我们希望您喜欢这里对 DB2 UDB GUI 工具的介绍,我们还希望这是您在 DB2 UDB 领域中成功职业生涯的开始。


Raul F. Chong是 IBM 多伦多实验室的数据库顾问,主要与 IBM 业务伙伴进行合作。Raul 已经在 IBM 任职了 5 年,其中有 3 年是在 DB2 技术支持部(Technical Support)工作,另两年担任顾问,专门从事数据库应用程序开发和从其它 RDBMS 迁移到 DB2 方面的工作。可以通过 与他联系。

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