本节假设 TCP/IP 在客户机和服务器工作站上起作用。参见软件需求, 以了解您的平台的通信协议需求。参见可能的客户机至服务器联网方案,以 了解您的客户机和服务器支持的通信协议。
要在 DB2 客户机上设置 TCP/IP 通信,执行下列步骤:
步骤 1. | 标识并记录参数值。 |
步骤 2. | 配置客户机:
|
步骤 3. | 测试客户机与服务器之间的连接。
|
当继续执行配置步骤时,
填写下表中您的值一列。在开始配置此协议之前,可填写其中一些值。
参数 | 说明 | 样本值 | 您的值 |
---|---|---|---|
主机名
|
使用远程服务器工作站的 hostname 或 ip_address。 要解析此参数:
|
serverhost 或 9.21.15.235
| |
服务名
|
services 文件中必需的值。 “连接服务”名是任意的本地名称, 表示服务器上的“连接端口号”(port_number)。 该端口号必须与服务器上 services 文件中 的 svcename 参数所映射至的端口号相同。(svcename 参数位于服务器上的数据库管理程序配置文件中)。此值不能被任何其他应用程序使用, 并且在 services 文件中必须是唯一的。 与数据库管理员联系以获取用来配置服务器的值。
|
server1
3700/tcp
| |
节点名 (node_name) |
描述正尝试连接的节点的本地别名。 可以选择想要的任何名称;然而,本地节点目录中的所有节点名值必须是唯一的。
| db2node |
下列步骤将客户机配置为使用 TCP/IP 来与服务器通信。用工作表值置换样本值。
![]() |
若您的网络有一个名称服务器,
或您正计划直接指定该服务器的 IP 地址 (ip_address),
则跳过此步骤并继续执行步骤 B. 更新 Services 文件。
|
客户机必须知道它正试图与之建立通信的服务器的 IP 地址。若在网络上不存在名称服务器, 则可直接指定主机名,它映射至本地 hosts 文件中的服务器的 IP 地址 (ip_address)。参见表 18 以获取您的特定平台的 hosts 文件的位置。
若计划支持使用“网络信息服务”(NIS) 的 UNIX 客户机,
且在网络上没有使用名称服务器,则必须更新位于您的 NIS 主服务器上的 hosts 文件。
表 18. 本地 Hosts 文件和 Services 文件的位置
平台 | 位置 |
---|---|
OS/2 | 由 etc 环境变量指定。输入 set etc 命令, 以确定您的本地 hosts 或 services 文件的位置。 |
Windows NT 或 Windows 2000 | 位于 winnt\system32\drivers\etc 目录中。 |
Windows 9x | 位于 windows 目录中。 |
UNIX | 位于 /etc 目录中。 |
编辑客户机的 hosts 文件,并为服务器的主机名添加一项。 例如:
9.21.15.235 serverhost # serverhost 的主机地址
其中:
若服务器与客户机不在相同的域中, 您必须提供一个全限定域名,如 serverhost.vnet.ibm.com,其中, vnet.ibm.com 是域名。
![]() |
若计划使用端口号 (port_number) 来编目 TCP/IP 节点,
则跳过此步骤并转至步骤 C. 编目 TCP/IP 节点。
|
使用本地文本编辑器,将“连接服务名”和端口号添加至客户机的 services 文件中,以支持 TCP/IP。例如:
server1 3700/tcp # DB2 连接服务端口
其中:
若计划支持使用“网络信息服务”(NIS) 的 UNIX 客户机, 必须更新位于 NIS 主服务器上的 services 文件。
services 文件 与您可能在步骤 A. 解析服务器的主机地址中编辑过的本地 hosts 文件位于同一目录中。
有关特定平台上 services 文件的位置的信息,参见表 18。
必须向客户机的节点目录添加用以描述远程节点的项。此项指定客户机将用于存取远程服务器的所选别名 (node_name)、 hostname(或 ip_address)和 svcename(或 port_number)。
要编目 TCP/IP 节点, 执行下列步骤:
步骤 1. | 用有效的 DB2 用户 ID 向系统注册。有关详情,参见附录 E, 命名规则。
| ||
步骤 2. | 若您正在使用 UNIX 客户机,则运行启动脚本,如下所示: . INSTHOME/sqllib/db2profile (对于 bash、Bourne 或 Korn shell) source INSTHOME/sqllib/db2cshrc (对于 C shell) 其中 INSTHOME 是此实例的主目录。 | ||
步骤 3. | 通过输入下列命令编目该节点: db2 "catalog tcpip node node_name remote [hostname|ip_address] server [svcename|port_number]" db2 terminate 例如, 要使用服务名 server1 来编目称为 db2node 的节点上的远程服务器 serverhost, 输入下列命令: db2 catalog tcpip node db2node remote serverhost server server1 db2 terminate 要使用端口号 3700 来编目称为 db2node 的节点上具有 IP 地址 9.21.15.235 的远程服务器, 输入下列命令: db2 catalog tcpip node db2node remote 9.21.15.235 server 3700 db2 terminate
|
![]() | 若需要更改使用 catalog node 命令设置的值,执行下列步骤:
|
在客户机应用程序可以存取远程数据库之前, 必须在该服务器节点和任何将与其连接的客户机节点上编目该数据库。 缺省情况下,创建数据库时, 它是以与该数据库名 (database_name) 相同的数据库别名 (database_alias) 在服务器上自动编目的。在客户机上使用数据库目录中的信息及节点目录中的信息, 以建立至该远程数据库的连接。
要在客户机上编目数据库,执行下列步骤:
步骤 1. | 用有效的 DB2 用户 ID 向系统注册。有关详情,参见附录 E, 命名规则。
| ||||||
步骤 2. | 填写下列工作表中的您的值一列。
| ||||||
步骤 3. | 若您正在使用 UNIX 客户机,则运行启动脚本,如下所示: . INSTHOME/sqllib/db2profile (对于 bash、Bourne 或 Korn shell) source INSTHOME/sqllib/db2cshrc (对于 C shell) 其中,INSTHOME 表示实例的主目录。 | ||||||
步骤 4. | 通过输入下列命令来编目数据库: db2 catalog database database_name as database_alias at node node_name db2 terminate 例如,要在节点 db2node 上编目远程数据库 sample, 以使它具有别名 tor1,则输入下列命令: db2 catalog database sample as tor1 at node db2node db2 terminate
|
在配置了用于通信的客户机后, 将需要连接至远程数据库,以测试该连接。
步骤 1. | 在服务器上输入 db2start 命令来启动数据库管理程序(若它在引导时未自动启动)。 |
步骤 2. | 若您正在使用 UNIX 客户机,则运行启动脚本,如下所示: . INSTHOME/sqllib/db2profile (对于 Bash、Bourne 或 Korn shell) source INSTHOME/sqllib/db2cshrc (对于 C shell) 其中,INSTHOME 表示实例的主目录。 |
步骤 3. | 在客户机上输入下列命令以将该客户机连接至远程数据库: db2 connect to database_alias user userid using password
|
对于在其上认证用户 ID 和口令的系统, 这些用户 ID 和口令的值必须有效。缺省情况下,对于 DB2 服务器,认证发生在服务器上;对于 DB2 Connect 服务器,认证发生在主机或 AS/400 机器上。
若连接成功,您将收到一个信息,它显示您连接的数据库的名称。现在, 可检索该数据库中的数据。例如,要检索系统目录表中列示的所有表名的列表, 在“命令中心”或 CLP 中输入以下 SQL 命令:
"select tabname from syscat.tables"
当结束使用数据库连接时,输入
command reset 命令以结束数据库连接。
![]() |
现在准备开始使用 DB2。有关更高级的主题,参考管理指南和安装和配置补遗。
|
若连接失败,检查下列项目:
在服务器上:
![]() |
输入 db2set DB2COMM 命令,
以检查 db2comm 注册表值的设置。有关详情,请参考管理指南。
|
![]() | 若在启动协议的连接管理程序时出现问题,
则出现警告信息,而错误信息将记录在
INSTHOME/sqllib/db2dump
目录的 db2diag.log 文件中。
有关 db2diag.log 文件的详情, 参考 Troubleshooting Guide。 |
在客户机上:
验证这些项目后,若连接仍失败,则参考 Troubleshooting Guide。