使用真正应用集群管理负载

本教程旨在向您介绍如何使用 Oracle 数据库 10g 真正应用集群创建和管理服务。

大约 1 个小时

本教程包括下列主题:

将光标置于此图标上可以加载和查看本教程的所有屏幕截图。(警告:因为此操作会同时加载所有屏幕截图,所以根据 Internet 连接的不同,响应时间可能会比较慢。)

注意:此外,还可以在下列步骤中将光标放在每个单独的图标上,从而仅加载和查看与该步骤相关的屏幕截图。

高可用性是 RAC 的一个重要特性。它防止了实例故障造成的应用程序崩溃。Oracle Net Services 为集群数据库提供了负载均衡功能。均衡应用程序负载可以提供更高的性能,并可以通过将更多节点添加到集群中来轻松支持更多用户。通过服务,用户可以在集群中增加新实例时自动路由到这些新实例上。

Oracle 数据库 10g 自动负载管理使 DBA 能够灵活地为每种服务定义故障切换和负载均衡策略。在本教程中定义了两个服务 — SERV1 和 SERV2。这两个服务都被定义为具有 1 个首选节点和 1 个可用节点。在本教程中,您将关闭一个数据库实例并看到服务从一个实例切换到另一个实例。

开始学习本教程之前,您应已经:

1.

完成了教程:使用真正应用集群 (RAC) 和自动存储管理 (ASM) 在 Windows 上安装 Oracle 数据库 10g

或者

完成教程:在 Linux 上安装 Oracle 数据库 10g

返回主题列表

服务是用来将数据库要执行的工作划分为逻辑负载的组或类别,例如应付账款 (AP)、客户关系管理 (CRM) 等。RAC 中的服务实现了连续、不中断的数据库操作,以支持在单个数据库中的多个服务。

服务使 RAC 能够将集群数据库资源集成到单个系统镜像中以优化集群可管理性。这就简化了系统部署、测试、灾难恢复和管理开销。通过服务,用户可以不用考虑哪个实例执行 SQL 应用程序服务即可连接到数据库。

您可以指派服务在一个或多个实例上运行,替代实例可以用作主实例出现故障时的备用实例。如果主实例出现故障,那么 Oracle 将把服务从故障实例转移到幸存的替代实例上。

执行以下步骤来创建服务:

1.

打开一个终端窗口,并执行命令 dbca

将鼠标移到该图标上可以查看该图像

2.

在 Welcome 页面上,确保选中“Oracle Real Application Clusters database”,然后单击 Next

将鼠标移到该图标上可以查看该图像

3.

选中 Services Management,然后单击 Next

将鼠标移到该图标上可以查看该图像

4.

确保选中您的集群数据库,然后单击 Next

将鼠标移到该图标上可以查看该图像

5.

要添加服务,单击 Add

将鼠标移到该图标上可以查看该图像

6.

输入服务名 SERV1,然后单击 OK

将鼠标移到该图标上可以查看该图像

7.

确保选中 SERV1,然后选择 O10G1 作为首选实例、O10G2 作为可用实例。确保将 TAF Policy 设为 None。然后在 Database Services 面板中,单击 Add

将鼠标移到该图标上可以查看该图像

8.

输入服务名 SERV2,然后单击 OK

将鼠标移到该图标上可以查看该图像

9.

确保选中了 SERV2,然后选择 O10G1 作为可用实例、O10G2 作为首选实例。确保将 TAF Policy 设为 None。然后单击 Finish

将鼠标移到该图标上可以查看该图像

10.

在确认对话框中,单击 OK

将鼠标移到该图标上可以查看该图像

11.

您将看到进度窗口。

将鼠标移到该图标上可以查看该图像

12.

在配置服务之后,在消息对话框中单击 No

将鼠标移到该图标上可以查看该图像

在创建服务之后,您可以在 Database Control 中查看它们。执行以下步骤:

1.

打开一个浏览器窗口,并输入以下 URL:

http://:5500/em

输入 sys/ 作为 SYSDBA 登录,单击 Login

将鼠标移到该图标上可以查看该图像

2.

选择 Administration 选项卡。

将鼠标移到该图标上可以查看该图像

3.

在 High Availability 下,选择 Cluster Managed Database Services

将鼠标移到该图标上可以查看该图像

4.

输入 oracle 作为主机用户名和口令,并单击 Login

将鼠标移到该图标上可以查看该图像

5.

正在检索您的服务信息。

将鼠标移到该图标上可以查看该图像

6.

显示您先前创建的 SERV1 和 SERV2 服务。选择 SERV1 选项按钮,然后单击 Manage Service

将鼠标移到该图标上可以查看该图像

7.

请注意,SERV1 服务已被配置为在 O10G1 和 O10G2 实例上运行。

将鼠标移到该图标上可以查看该图像

为了模拟 RAC 环境如何分配负载,您需要生成一些活动。Oracle 构建了一个实用工具来以图形形式显示系统上的活动。执行以下步骤:

1.

双击桌面上面板中的 Swingbench 图标。选择 Configuration 选项卡。

将鼠标移到该图标上可以查看该图像

2.

Connect 字符串更改为 SERV1 服务,然后单击 > 按钮。

将鼠标移到该图标上可以查看该图像

3.

在大约 5 分钟之后,您将看到加载了用户并创建了活动。

将鼠标移到该图标上可以查看该图像

这时,您可以查看哪一个会话在哪一个服务上运行。执行以下步骤:

1.

转回 Database Control。选择 Cluster Database:O10G 定位链接。

将鼠标移到该图标上可以查看该图像

2.

选择 Performance 选项卡。

将鼠标移到该图标上可以查看该图像

3.

等待大约 1 分钟,您将看到数据显示在图表中。向下滚动至页面底部。

将鼠标移到该图标上可以查看该图像

4.

在 Additional Monitoring Links 下,选择 Top Sessions

将鼠标移到该图标上可以查看该图像

5.

您将看到使用率最高的会话列表。查看 Instance Name 列。向下滚动一页。

将鼠标移到该图标上可以查看该图像

6.

请注意,一些会话在使用 O10G1,而另一些会话则在使用 O10G2。

将鼠标移到该图标上可以查看该图像

要查看 RAC 的能力,您可以终止其中的一个数据库实例上的一个 pmon 进程,看看会话将受到怎样的影响。执行以下步骤:

1.

打开终端窗口,执行以下命令:

ps -ef | grep pmon
kill -9 

将鼠标移到该图标上可以查看该图像

2.

转回 Enterprise Manager Database Control。单击 Refresh。请注意,先前使用 O10G1 实例的所有会话现在都使用 O10G2 了。单击 O10G Cluster Database 定位链接。

将鼠标移到该图标上可以查看该图像

3.

单击 Administration 选项卡。然后在 High Availability 下,选择 Cluster Managed Database Services

将鼠标移到该图标上可以查看该图像

4.

输入用户名和口令 (oracle/),并单击 Login

将鼠标移到该图标上可以查看该图像

5.

出现“Retrieve Status”窗口。

将鼠标移到该图标上可以查看该图像

6.

两种服务都停止了。数据库实例的情况如何?选择 SERV1,然后单击 Manage Service

将鼠标移到该图标上可以查看该图像

7.

出现“Retrieve Status”窗口。

将鼠标移到该图标上可以查看该图像

8.

O10G1 实例停止,而 O10G2 实例在运行。如果情况不是这样,请单击 Refresh。

将鼠标移到该图标上可以查看该图像

9.

等待大约 2 分钟,再次单击 Refresh。请注意,数据库实例和服务现在已恢复。Oracle 集群件的好处之一就是它提供一个监视 Oracle 进程的高可用性框架。它自动注意到 O10G1 已停止并将其重新启动。通过 Oracle 数据库 10g 服务,用户将被自动转到一个活动实例上,该实例可以提供用户所需的资源,并无需对应用程序进行任何更改。

将鼠标移到该图标上可以查看该图像

在本教程中,您学习了如何执行下列任务:

使用 DBCA 创建服务
查看您启用的服务
在 RAC 数据库上生成负载
查看使用率最高的会话以评估服务
模拟数据库实例崩溃

返回主题列表

返回主题列表

将光标置于该图标上可以隐藏所有屏幕截图。