IBM®
跳转到主要内容
    中国 [选择]    使用条款
 
 
Select a scope:Search for:    
    首页    产品    服务与解决方案     支持与下载    个性化服务    
跳转到主要内容

developerWorks 中国  >  Information Management  >

DB2 UDB Express GUI 工具简介(第 2 部分)

developerWorks
文档选项

未显示需要 JavaScript 的文档选项


级别: 初级

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 被设置为 '@' 值。

1. 使用 Task Center 自动化数据库操作 —— Task 和 Command Script 标签
Task and Command Script tabs

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

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

2. 使用 Task Center 自动化数据库操作 —— Run properties 标签
Run properties tab

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

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

3. 使用 Task Center 自动化数据库操作 —— Group 和 Schedule 标签
Group and schedule tabs

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

4. 使用 Task Center 自动化数据库操作 —— Notification 标签
Notification tab

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

5. 使用 Task Center 自动化数据库操作 —— Task Actions 标签
Task Actions tab

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

6. 使用 Task Center 自动化数据库操作 —— Security 标签
Security tab

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

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

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

8. Journal —— 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 工具故障诊断与排除

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

数据库所在的实例没有启动

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

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

DB2 Administration Server (DAS) 没有启动

这个问题会影响到远程 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 所示的信息。

tools catalog 数据库还没有创建

如果您收到一条像 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 方面的工作。可以通过 rfchong@ca.ibm.com 与他联系。




对本文的评价

太差! (1)
需提高 (2)
一般;尚可 (3)
好文章 (4)
真棒!(5)

建议?




回页首


IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。
    关于 IBM 隐私条约 联系 IBM 使用条款