级别: 中级 Karen Devlin, 软件工程师, IBM
2008 年 12 月 18 日 更新 2009 年 9 月 14 日 创建数据库连接要求用户提供特定的信息,包括数据库厂商、版本和 URL 信息。Data Studio Developer and Administrator 2.1 引入了一种简单且高效的数据库连接管理方法,让用户能够简便地存储和获取多个数据库的连接参数。在最近发布的 2.2 版本(在该版本中这些产品被改称为 Optim™)中,可用性得到了额外改进。InfoSphere™ Data Architect 7.5.2 还添加了对通用连接的支持。本文讨论如何使用通用连接提高管理数据库连接信息的效率。
简介
Data Source Explorer 允许用户使用 New Connection 向导和属性浏览器创建和管理数据库连接。在适当地配置数据库连接之后,可以把这些连接导出到连接文件中,然后把连接文件导入其他用户的工作空间,这样就能够与其他用户共享这些连接。
 |
配套演示稿
在 channelDB2 上 观看视频,它展示了如何使用通用连接(基于 2.1 版本)。
|
|
尽管此特性允许共享数据库连接,但是需要把连接文件存储在共享的文件系统中。访问控制由文件系统的安全限制决定。希望共享数据库连接的用户必须知道连接文件的存储位置,还要知道哪些文件包含他们需要的连接信息。
使用配置存储库显著改进了这个过程。配置存储库 是一组数据库表,其中包含共享的连接信息或属性。通过使用这个存储库,可以把连接信息组织成符合逻辑的组,从而满足不同用户的需求。需要访问共享的数据库连接的开发人员或 DBA 只需了解如何连接配置存储库。访问控制和安全性由底层数据库提供。
本文讲解在受支持的产品中如何设置、连接和使用配置存储库以管理数据库连接。本文演示如何设置一个配置存储库,这个存储库按照质量保证(QA)团队要支持的平台进行组织。
先决条件
本文假设您了解如何在基于 Eclipse 的产品中创建、管理和使用数据库连接。
系统需求
 |
2.2 版本的新特性
2.2 版本包含以下新特性:
- 通用连接被添加到 InfoSphere Data Architect 7.5.2(您可以存储任何受 IDA 支持的数据库的连接配置)。
- 您可以重命名连接组和连接配置,或通过复制粘贴修改它们的位置。
- 您可以通过复制粘贴从一个连接组中创建多个数据库连接。
- 您可以通过复制粘贴创建连接和连接配置。
- 您可以验证和刷新数据库连接。
- 一个新的图标让用户能够轻松识别从连接配置创建的数据库连接。
|
|
本文介绍的通用连接特性是在 Data Studio Developer 2.1 和 Data Studio Administrator 2.1 中引入的。在 2.2 版本中,这个特性被扩展到 InfoSphere Data Architect (IDA) 7.5.2,并且进行了几处可用性改进。在本文中,这些改进被划分为 2.2 版本特性,并且当某个特性仅从这些产品的 2.2 版本开始才可用时,会做出提示。欢迎使用所有这些特性,本文的 参考资料 提供了下载这些产品的试用版的链接。
术语
本文在描述通用连接特性时使用以下术语:
配置存储库 —— 一组数据库表,其中包含连接组和连接配置。
连接配置 —— 用来创建数据库连接的一组必需的属性值,包括数据库版本、数据库厂商、端口号和主机名。
连接组 —— 配置存储库中的虚拟文件夹,其中包含相关的连接配置。连接组并不是必需的,但是有助于组织相关的连接配置。本文使用连接组演示 QA 团队如何按照测试环境中的平台来组织连接。销售团队可能按照地理区域组织连接组。零售团队可能使用连接组识别存储不同季度或年份的销售信息的数据库服务器。
使用配置存储库
本节讲解如何设置、修改和删除配置存储库。
设置存储库
配置存储库由数据库管理员设置。存储库可以包含 Data Studio Developer 支持的所有数据库平台或连接的连接信息。可以使用以下任何数据库设置配置存储库:
- DB2® for Linux®, UNIX®, and Windows®
- DB2 for z/OS®
- DB2 for i
- Informix® Dynamic Server
需要连接将创建存储库的数据库服务器。使用 New Connection 向导创建数据库连接。在 Data Source Explorer 中,右键单击连接并选择 Set up Configuration Repository 选项,如图 1 所示:
图 1. 配置存储库设置
SQL 编辑器显示针对适当平台在 .sql 文件中生成的 DDL。根据备份和共享连接配置的需要,可以通过定制设置脚本为配置表指定不同的表空间。在 SQL 编辑器中右键单击并选择 Run SQL 以设置配置存储库,见图 2。
图 2. 运行 SQL
清单 1 包含针对 DB2 for Linux, Unix, and Windows 数据库的用于创建配置存储库的 setup.sql 脚本。
清单 1. 针对 DB2 for Linux, Unix, and Windows 的 setup.sql
CREATE SCHEMA IBMPDQ;
CREATE TABLE IBMPDQ.CONNECTION (
DATABASE VARCHAR(255),
NAME VARCHAR(255) NOT NULL,
DB_VENDOR VARCHAR(255),
DB_VERSION VARCHAR(255),
OS VARCHAR(255),
OWNER VARCHAR(255),
VERSION INTEGER
);
CREATE TABLE IBMPDQ.CONNECTION_PROPS (
NAME VARCHAR(255) NOT NULL,
PROFILE_TYPE VARCHAR(255),
PROPERTY_KEY VARCHAR(255),
PROPERTY_VALUE VARCHAR(255),
FLAG VARCHAR(255)
);
CREATE TABLE IBMPDQ.GROUP (
GROUP_PATH VARCHAR(1000) NOT NULL,
NAME VARCHAR(255),
DESCRIPTION VARCHAR(255),
VERSION INTEGER,
OWNER VARCHAR(255)
);
CREATE TABLE IBMPDQ.GROUP_CONNECTION (
GROUP_PATH VARCHAR(1000) NOT NULL,
CONNECTION_NAME VARCHAR(255) NOT NULL
);
ALTER TABLE IBMPDQ.CONNECTION ADD CONSTRAINT CONNECTION_PK PRIMARY KEY (NAME);
ALTER TABLE IBMPDQ.GROUP ADD CONSTRAINT GROUP_PK PRIMARY KEY (GROUP_PATH);
ALTER TABLE IBMPDQ.CONNECTION_PROPS ADD CONSTRAINT CONN_PROPS_FK FOREIGN KEY (NAME)
REFERENCES IBMPDQ.CONNECTION (NAME)
ON DELETE CASCADE;
ALTER TABLE IBMPDQ.GROUP_CONNECTION ADD CONSTRAINT GP_CONNG_FK FOREIGN KEY (GROUP_PATH)
REFERENCES IBMPDQ.GROUP (GROUP_PATH)
ON DELETE CASCADE;
ALTER TABLE IBMPDQ.GROUP_CONNECTION ADD CONSTRAINT
GP_CONNC_FK FOREIGN KEY (CONNECTION_NAME)
REFERENCES IBMPDQ.CONNECTION (NAME)
ON DELETE CASCADE;
|
连接配置存储库
在设置配置存储库数据库之后,就可以在其中填充连接组和连接配置。连接存储库的任何用户都能够通过访问连接组和连接配置创建数据库连接。为了连接配置存储库,需要建立到存储库所在的服务器的本地数据库连接。使用 New Connection 向导创建数据库连接。
在 Data Source Explorer 中,右键单击 Configuration Repository 文件夹并选择 New,如图 3 所示。
图 3. 新的配置存储库
在列表中选择适当的数据库连接并单击 Finish,如图 4 所示。
图 4. 选择存储库连接
配置存储库会显示在 Data Source Explorer 中,如图 5 所示。
图 5. SAMPLE 配置存储库
与本地数据库连接一样,可以连接配置存储库和断开连接。
查看和修改配置存储库属性
在 Data Source Explorer 中右键单击存储库并选择 Properties,见图 6。
图 6. 存储库属性
对于这个示例,把默认的存储库名改为 QAConnections 并添加描述。要想查看所有属性,可以单击属性浏览器左边的选项卡。图 7 显示这些步骤。
图 7. 修改配置存储库属性
2.2 版本特性:您可以使用上下文菜单重命名配置储存库。在 Data Source Explorer 中选择一个储存库,然后从上下文菜单选择 Rename,见图 7b。
图 7b. 重命名配置储存库
删除配置存储库
为了方便,还提供了删除在设置配置存储库时创建的表的 .sql 脚本。访问这个 .sql 脚本的方法是,在 Data Source Explorer 中右键单击存储库的数据库连接并选择 Remove Configuration Repository,如图 8 所示。
图 8. 删除配置存储库
可选:使用连接组
可以把配置存储库中的连接信息组织成连接组。连接组是可选的。为了创建连接组,用户必须有更新存储库表的数据库特权。连接组名称可以是底层存储库数据库允许的任何 VARCHAR 类型的值。
创建连接组
创建连接组的方法是,右键单击配置存储库并选择 New Group,如图 9 所示。
图 9. 创建连接组
连接组可以包含子组,从而进一步组织连接配置。连接组名在配置存储库中必须是惟一的。但是,不同组中的子组名可以是相同的,如图 10 所示。
图 10. 连接组和子组
删除连接组
删除连接组的方法是在 Data Source Explorer 中选择组并从上下文菜单中选择 Delete Group。在删除一个连接组时,此组中的所有连接配置也被删除。但是,使用受影响的连接配置创建的数据库连接不会受到影响。
修改连接组
2.2 版本特性:您可以更改连接组的名称或位置。要更改连接组的名称,需要在 Data Source Explorer 中选择该组,然后从上下文菜单中选择 Rename,如图 10b 所示。
图 10b. 重命名连接组
使用 Cut 和 Paste 菜单选项修改连接组的位置。连接组和子组可以在一个储存库中移动,或移动到另一个储存库中。选中的连接组中的所有子组和连接配置都将被移动。要移动连接组,需要在 Data Source Explorer 中选择该组,然后从上下文菜单选择 Cut,如图 10c 所示。
图 10c. 移动连接组(剪切)
选择新的位置,并从上下文菜单选择 Paste。新的位置可以是另一个配置储存库,或相同储存库中的另一个连接组或子组。连接组将从原先位置删除,并添加到选中的组或储存库中,如图 10d 所示。
图 10d. 移动连接组(粘贴)
还可以将连接组复制到新的位置。使用 Copy 菜单选项复制连接组,如图 10e 所示。这个选项将把连接组及其子组和配置复制到指定位置。原来的连接组保留不变。
图 10e. 复制连接组(粘贴)
从连接组创建数据库连接
2.2 版本特性:您可以使用 Copy 和 Paste 上下文菜单选项从连接组一次创建多个数据库连接。使用 QAConnections 作为实例,假设有必要使用 DB2 for i 数据库的不同版本进行某项测试。在 Data Source Explorer 中选择 ISeries 连接组,然后从上下文菜单选择 Copy 选项。在 Data Source Explorer 中选择 Database Connections 文件集,并从上下文菜单选择 Paste,如图 10f 所示。
图 10f. 从组创建连接
在连接组中为每个配置创建了一个新的数据库连接。注意,在图 10g 中,新数据库连接的名称与用于创建该连接的连接配置的名称相同。
图 10g. 组连接
创建连接配置
本节讨论如何创建连接配置本身,其他用户可以根据需要使用这些连接配置连接特定的数据库。每个用户在尝试连接时需要提供适当的用户 ID 和密码。
连接配置包含创建数据库连接所需的属性值。连接配置是在 Data Source Explorer 中从本地数据库连接创建的。为了创建连接配置,用户必须具有更新存储库表的数据库特权。
 | |
注意:应该从由 New Connection 向导生成的数据库连接创建连接配置,以此确保使用适当的属性值。如果从用数据库别名创建的数据库连接创建连接配置,可能会出现不确定的结果。
|
|
为了创建连接配置,在 Data Source Explorer 中选择本地数据库连接,右键单击并选择 Create Connection Configuration,如图 11 所示。
图 11. 创建连接配置
选择适当的组并输入一个有意义的连接配置名。对于此示例,使用服务器的主机名,如图 12 所示。
图 12. 指定配置位置
连接配置显示在 Data Source Explorer 中指定的连接组中。与子组名不同,连接配置名必须在配置存储库中是唯一的,如图 13 所示。
图 13. 新的连接配置
2.2 版本特性:您可以使用 Copy 和 Paste 菜单选项创建连接配置。在 Data Source Explorer 中选择一个数据库连接。右键单击并从上下文菜单选择 Copy,如图 13b 所示。
图 13b. 复制数据库连接
在应该创建连接配置的地方选择配置储存库或连接组。右键单击该文件夹,然后从上下文菜单选择 Paste,如图 13c 所示。
图 13c. 粘贴数据库连接
在指定位置创建了数据库连接。这个连接配置与数据库连接同名,如图 13d 所示。
图 13d. 新的连接配置(复制/粘贴)
在存储库中创建连接配置之后,能够连接存储库的任何用户都可以使用连接配置创建数据库连接。
修改连接配置
2.2 版本特性:您可以修改连接配置的名称和位置。这些特性通过选中的连接配置的上下文菜单选项的 Rename、Cut、Copy 和 Paste 提供。查看本文的 修改连接组 更多地了解这些菜单选项的用法。
使用连接配置创建连接
既然了解了存储库设置和连接配置,就来看看如何实际使用这些连接配置。能够连接配置存储库的任何用户都可以使用连接配置创建本地数据库连接。使用连接配置创建数据库连接的方法是,在 Data Source Explorer 中右键单击连接配置并从上下文菜单中选择 Create Connection,如图 14 所示。
图 14. 创建数据库连接
2.2 版本特性:连接配置在 New Connection 对话框中是预先选中的。注意,在连接属性中会自动地填充连接配置中的值,但是数据库用户名和密码除外。输入新的连接名、数据库用户和密码,然后选择 Finish,如图 15 所示。
图 15. 指定连接信息
新的数据库连接显示在 Data Source Explorer 中,如图 16 所示。
图 16. 新的数据库连接
2.2 版本特性:您可以使用 Copy 和 Paste 上下文菜单选项轻松地从连接配置创建数据库连接。在 Data Source Explorer 中选择一个连接配置。右键单击并选择 Copy 菜单选项,如图 16b 所示。
图 16b. 复制连接配置
在 Data Source Explorer 中选择 Database Connections 文件夹。从上下文菜单右键单击并选择 Paste,如图 16c 所示。
图 16c. 复制连接配置
新的数据库连接将显示在 Data Source Explorer 中,如图 16d 所示。注意新的连接图标。连接图标上的绿色勾号表明从连接配置创建了数据库连接。
图 16d. 新数据库连接图标
当从连接配置创建了数据库连接之后,从上下文菜单使用 Connect 选项将其连接到数据库,如图 16e 所示。
图 16e. 连接到数据库
输入数据库用户名和密码,并选择 OK 按钮连接到该数据库,如图 16f 所示。
图 16f. 完成数据库连接
验证和刷新连接
2.2 版本特性:您可以验证和刷新从连接配置创建的数据库连接。这个特性确保数据库连接属性与在配置储存库中对连接配置所做的任何修改保持一致。
当您需要为某个连接配置更新属性值时,则删除原始的连接配置,并通过创建一个与原始连接配置同名的 新连接配置来顶替它。如果您使用其他不同的名称,将不能正确验证任何使用这个连接配置创建的数据库连接。
通过引入新的图标帮助用户轻松识别从连接配置创建的数据库连接。参看 图 16d 了解关于新图标的更多信息。
要根据原始连接配置验证数据库连接属性,需要在 Data Source Explorer 中选择该数据库连接。右键单击该连接,并选择 Connection Configurations
> Validate 上下文菜单选项,如图 17 所示。
图 17. 验证连接属性
将数据库连接属性与用于创建该数据库连接的连接配置的属性值进行比较。如果属性值是相同的,将显示一条成功消息,如图 18 所示。
图 18. 验证连接属性(成功)
如果连接配置的属性值被更改了,并且不能与数据库连接的属性匹配,那么将显示一条失败消息。
图 19. 验证连接属性(失败)
Problems 视图显示失败的细节,如图 20 所示。
图 20. Problems 视图
注意,当连接验证失败时,数据库连接图标将显示为红色的 X,如图 21 所示。
图 21. 刷新连接图标
要更新数据库连接属性,在 Data Source Explorer 中选择数据库连接。右键单击该连接并从上下文菜单选项中选择 Connection Configurations > Refresh,如图 22 所示。
图 22. 刷新数据库连接
在刷新之后,数据库连接属性将更新为配置储存库当前存储的属性值,如图 23 所示。
图 23. 刷新数据库连接(成功)
结束语
本文讨论了如何使用 Optim Development Studio、Optim Database Administrator 和 InfoSphere Data Architect 中的 DB2 通用连接特性设置配置存储库,让多个用户可以共享数据库连接属性。您还学习了如何通过创建连接组和子组来组织和定义连接配置。能够连接配置存储库服务器的任何用户都可以使用连接配置创建本地数据库连接,而不需要了解每个数据库的连接属性。
致谢
本文作者对 Tony Leung、Lawrence Dunnell 和 Gary Lazzotti 提供的帮助表示衷心感谢!
参考资料 学习
获得产品和技术
讨论
关于作者  | 
|  | Karen Devlin 是在 IM Tooling Quality Assurance 工作的软件工程师。在 IBM 期间,她在 IBM Technical Disclosure Bulletin 和 developerWorks 上发表了多篇文章。她由于在 XQuery Builder 中创建 xpath 表达式的成果获得了专利奖。 |
对本文的评价
|