您的位置:首页 > 其它

DB2 V8 连通性快捷表

2008-05-23 10:21 239 查看
对于那些喜欢使用命令而不喜欢使用 GUI 工具的人们来说,本文告诉您如何使用 DB2 命令将您的客户机连接至分布式系统或 OS/390 上的 DB2 服务器。它包括了一张“便条”,您可以将其复制并随身携带,以便使该过程变得轻而易举。
简介

本 文的目的在于快速浅显地说明如何使用 DB2 命令建立 IBM® DB2® Universal Database™ 客户机和 DB2 服务器之间的连通性。对于本文而言,DB2 服务器可以是 DB2 UDB for Linux、UNIX® 和 Windows® 或 DB2 UDB for OS/390® and z/OS™。而且,倘若您完全按照所有的指示信息去做,但仍无法进行连接,那么没关系,我已经归纳了这种情况下要检查的某些内容,以帮助您确定问题出在哪 里。

配置助手(Configuration Assistant,CA)GUI 工具(其以前的名称为客户机配置助手 (Client Configuration Assistant,CCA))可以在 Windows 或 UNIX 平台上作为建立连接的简单图形界面来使用。但是,如果您了解了 CA 在幕后所执行的实际的 DB2 命令,那么您会更好地理解将 DB2 客户机连接至 DB2 服务器时所需的东西。此外,这些命令可以一直保存在脚本中,可以方便地将该脚本分发给任何需要进行相同连通性设置的 DB2 客户机。

下面的表演示了使用 DB2 命令行处理器(CLP)建立连接的步骤。只演示了“基本的”命令选项。对于 DB2 V8 而言,它只支持 TCPIP 协议。如果您想打印这些图表的“瘦身”版本,以便于阅读,请转到本文结尾处的 下载一节。

我们将研究三种常见方案。








回页首
方案 1 - 从 DB2 客户机连接到 DB2 Linux/Unix/Windows 服务器

从 DB2 Linux/Unix/Windows 机器连接到 DB2 Linux/Unix/Windows 机器(无需安装 DB2 Connect™)。

图 1. 从 DB2 Linux/Unix/Windows 连接到 DB2 Linux/Unix/Windows



机器 1(“libra”)
Linux/Unix/Windows
机器 2(“mpower”)
Linux/Unix/Windows
要在该机器上运行的命令: 您需要从该机器上获取的信息,以便在机器 1 上执行命令:
db2 catalog tcpip node mpwrnode
remote mpower.ca.ibm.com
server 50000

注:

“mpwrnode”是为该节点所选择的任意名称。

可以使用 IP 地址来代替主机名。

对于本示例:

mpower.ca.ibm.com = 机器 2 的主机名。

50000 = DB2 所使用的端口。

要找出所使用的端口,请访问文件
/etc/services
(UNIX)并用 grep 查找 DB2 实例名。例如,如果您的实例名是“db2inst1”,那么您通常会找到类似于这样的项:

db2cdb2inst1     50000/tcp
db2idb2inst1     50001/tcp

选取与 db2cdb2inst1 相关的端口(请注意第四个字母“c”)。
对于 Windows,请查看
X:/WINNT/System32/drivers/etc/services
db2 catalog db a42ds1 at node mpwrnode
a42ds1 = 机器 2 中您想访问的数据库名称。
db2 terminate

db2 connect to a42ds1
user <userid>
using <password>

如果不能连接,请按照下面各项进行检查:

客户机“libra” 数据库服务器“mpower”
ping mpower.ca.ibm.com
mpower.ca.ibm.com = 数据库服务器的主机名
如果您 ping 不通,那么问题可能出在 DNS。试着 ping 一下 IP 地址。
ping 158.228.20.100
158.228.20.100 = 数据库服务器的 IP 地址
这将确定网络是否有问题。
DB2 启动了吗?如果没有,请运行
db2start


将 DB2COMM 设置成 TCPIP 了吗?
通过执行下列命令来查看一下:
db2set -all
。如果没有设置这个注册表变量,那么您应当执行:
db2set db2comm=tcpip


将 SVCENAME 设置成
/etc/services
中的端口号或服务名了吗?
通过发出以下命令来查看该参数:
db2 get dbm cfg









回页首
方案 2 - 从 DB2 客户机连接到 DB2 for OS/390

从 DB2 Linux/Unix/Windows 机器连接到 DB2 for OS/390 and z/OS 机器( 必须在 Linux/Unix/Windows 机器上安装 DB2 Connect)。

图 2. 从 DB2 Linux/Unix/Windows 连接到 DB2 for OS/390 and z/OS



机器 1(“aries”)
Linux/Unix/Windows
机器 2(“bigblue”)
DB2 for OS/390 and z/OS
要在该机器上运行的命令: 您需要从该机器上获取的信息,以便在机器 1 上执行命令:
db2 catalog tcpip node bigbnode
remote bigblue.ca.ibm.com
server 446

注:

“bigbnode”是为该节点所选择的任意名称。

可以使用 IP 地址来代替主机名。

对于本示例:

bigblue.ca.ibm.com = 机器 2 的主机名

446 = DB2 所使用的端口

端 口 446 通常是缺省值。要找出所使用的端口,请与您的 DB2 for OS/390 and z/OS DBA 联系,他(她)能查看 MVS 系统日志(syslog)以获取消息 DSNL004I。该消息中的“TCPPORT”包含了要使用的端口。-DISPLAY DDF 命令也提供了该信息。

db2 catalog db d42d1
at node bigbnode
authentication dcs

“d42d1”是您用来连接至 DB2 for z/OS and OS/390 子系统的名称。该名称是随意挑选的。
db2 catalog dcs db d42d1
as s390loc

“s390loc” = 您想要访问的机器 2 上 DB2 子系统的 LOCATION NAME。要找出 LOCATION NAME,请与您的 DB2 for OS/390 DBA 联系,他(她)能查看 MVS 系统日志以获取消息 DSNL004I。该消息中的“LOCATION”包含了要使用的 LOCATION NAME。-DISPLAY DDF 命令也提供了该信息。
db2 terminate

db2 connect to d42d1
user <userid>
using <password>

如果不能连接,请按照下面各项进行检查:

客户机“aries” 数据库服务器“bigblue”
ping bigblue.ca.ibm.com
bigblue.ca.ibm.com = 数据库服务器的主机名
如果 ping 不通,那么问题可能出在 DNS。试着 ping 一下 IP 地址。
ping 158.228.20.3
158.228.20.3 = 数据库服务器的 IP 地址
这将确定网络是否有问题。
通过从 CLP 发出命令
db2licm -l
,确信您已经安装了 DB2 Connect 软件。
由于数据库服务器是 DB2 UDB for OS/390 and z/OS,因此请检查以下内容:

DB2 启动了吗?如果没有,请执行
-start db2


DDF 启动了吗?如果没有,请执行
-start ddf









回页首
方案 3 - 从 DB2 客户机连接到 DB2 Connect 网关,再连接到 DB2 for OS/390

从 DB2 Linux/Unix/Windows 机器(客户机,机器 0)连接到 DB2 Linux/Unix/Windows 机器(第 i 个 DB2 Connect 作为网关,机器 1),再连接到 DB2 for OS/390 and z/OS 机器(机器 2)。

从机器 1 连接到机器 2,请按照与 方案 2 中一样的指示信息进行操作。无需从 DB2 Connect 网关发出
catalog database
命令,除非您想从那台机器进行连接。

图 3. 从 DB2 Linux/Unix/Windows 客户机连接到 DB2 Linux/Unix/Windows DB2 Connect 网关,再连接到 DB2 for OS/390



机器 0(“raven”)
Linux/Unix/Windows
机器 1(“aries”)
Linux/Unix/Windows
要在该机器上运行的命令: 您需要从该机器上获取信息,以便在机器 0 上执行命令:
db2 catalog tcpip node gatewayn
remote aries.xyz.com
server 50010

注:

“gatewayn”是为该节点所选择的任意名称。

可以使用 IP 地址来代替主机名。

对于本示例:

aries.xyz.com = 机器 1 的主机名

50010 = DB2 所使用的端口

要找出所使用的端口,请访问文件
/etc/services
并用 grep 查找 DB2 实例名(和方案 #1 一样)。

db2 catalog db d42d1
at node gatewayn
authentication dcs_encrypt

d42d1 = 您想访问的数据库名称,该名称是在网关机器(机器 1)中的“catalog dcs”命令中指定的。
db2 terminate

db2 connect to d42d1
user <userid for DB2 OS/390 and z/OS>
using <password DB2 OS/390 and z/OS>

如果不能连接,请按照下面各项进行检查:

客户机“raven” 网关(DB2 Connect 服务器)“aries”
ping aries.xyz.com
aries.xyz.com = 网关服务器的主机名
如果 ping 不通,那么问题可能出在 DNS。试着 ping 一下 IP 地址。
ping 9.82.24.10
9.82.24.10 = 网关(DB2 Connect 服务器)的 IP 地址
这将确定网络是否有问题。
试着从网关连接到数据库服务器(如方案 2 所示)。如果能连接,则问题肯定出在从客户机到网关这一段。如果不能连接,则根据方案 2 来查看设置。
您可能要用到的其它相关命令(这些命令不适用于 DB2 for OS/390 and z/OS 服务器)有:

命令 命令描述 在哪里可以执行该命令
db2 list db directory
列出您已经编目的数据库所有机器
db2 list node directory
列出您已经编目的节点目录DB2 UDB 客户机和 DB2 Connect 服务器
db2 list dcs directory
列出您已经编目的 dcs 数据库DB2 Connect 服务器
uncatalog database <dbname>
对一个数据库项取消编目(倘若您错误地将数据库编目)所有机器
uncatalog dcs database <dbname>
对一个 dcs 数据库项取消编目DB2 Connect 服务器
uncatalog node <node name>
对一个节点项取消编目DB2 UDB 客户机和 DB2 Connect 服务器
db2licm -l
列出您已经安装的并获得许可的 DB2 产品所有机器
db2 ? <command name>
显示用于 <command name> 的语法,比如:
db2 ? catalog
会显示出“catalog”命令的语法
所有机器
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: