本文将为您介绍DB2服务器使用过程中修改DB2数据库服务器主机名的详细步骤,以及出现问题对应的方法,供您参考,希望对您有所帮助。
产品:DB2 UDB
平台:AIX、Solaris、HP-UX、Linux、Windows
版本:V8 V9.1V9.5
问题描述:
由于各种原因,用户在使用DB2服务器的过程中可能需要修改DB2数据库服务器的主机名。那么DB2需要做哪些相应的修改呢?
问题与解答:
为了修改DB2服务器的主机名,我们可以在DB2数据库服务器上执行以下步骤:
1) 停止 DB2 管理服务器 (DAS)?/SPAN>DB2 实例
a)db2admin 停止
在Windows上您可以直接执行命令来停止DAS,在Linux和UNIX上您可以执行命令来获取DAS实例的名称,然后像这样停止DAS
db2set -all |grep DB2ADMINSERVER
[g] DB2ADMINSERVER=das91
然后su – das91后执行命令“db2admin stop”
b) db2stop
如果有多个实例,则需要停止它们。您可以使用 db2ilist 命令列出主机上的所有实例,然后一一停止它们。
如果是Windows系统的话可以#p#
setDB2INSTANCE=INST1
db2停止
像这样停止实例
如果是Linux或UNIX系统,可以单独登录实例用户执行“db2stop”
2)修改服务器主机名(各个操作系统中如何修改主机名请参考相关操作系统文档)
3)以DB2实例用户登录后,执行
db2set -g DB2SYSTEM=
db2 终止
上面的命令在Windows上应该不会遇到问题,但是如果你的操作系统是Linux或者UNIX,这时候可能会遇到错误,比如:
如果是V8或者V9.1,会遇到如下错误信息:
$ db2set –g DB2SYSTEM=盗版
DB2SET 处理完成,rc = -2029059830,SQLCODE = 0
如果是V9.5,会遇到如下错误信息:
$ db2set -g DB2SYSTEM=privatesDBI1309E 系统错误.#p#
解释:
该工具遇到操作系统错误。
用户响应:
访问注册表期间遇到系统错误。确保有
注册表所在的文件系统上有足够的空间,并且
如果注册表位于远程,则存在有效的 LAN 连接。
出现上述错误的原因是全局变量的操作涉及到系统级文件。实例用户没有相应的修改文件的权限,但需要root权限。我们可以使用以下方法来完成该命令的执行:
$ 苏根
root的密码:
$ db2set -g db2system=privates
$ db2 终止
注意:使用上面的su命令时不带-,这样root就有了实例用户的环境变量。
如果有多个实例,则上述命令只需执行一次
使用实例用户查看修改状态,确认修改已完成。
$ db2set –all |grep DB2SYSTEM#p#
[g] DB2SYSTEM=私有
4)编辑db2nodes.cfg文件
该文件位于
**Linux 和 UNIX:/sqllib/db2nodes.cfg
** Windows:\IBM\SQLLIB\DB2\db2nodes.cfg
将主机名更改为新主机名。例如db2node.cfg原来的内容是
0 红01 0
更改为新主机名
0 私人 0
如果有多个实例,请一起修改
5)更新DB2管理服务器的配置信息
a) db2 list 管理节点目录 显示详细信息
b) db2 取消编目节点
c) db2 目录管理 tcpip 节点 远程 系统 d) 使用 DB2SYSTEM 更新 db2 管理配置
e) 使用 SMTP_SERVER 更新 db2 管理配置 #p#
a)db2admin启动
在Windows上,您可以直接执行命令来启动DAS,在Linux和UNIX上,您可以在停止DAS之前执行命令来获取DAS实例的名称,例如
db2set -all |grep DB2ADMINSERVER
[g] DB2ADMINSERVER=das91
然后su – das91后执行命令“db2admin start”
b)db2启动
如果有多个实例,则需要将它们全部运行。您可以使用 db2ilist 命令列出主机上的所有实例,然后一一启动它们。
如果是Windows系统的话可以
setDB2INSTANCE=INST1
db2启动
这将启动实例。
如果是Linux或UNIX系统,可以单独登录实例用户执行“db2start”#p#
7) 从服务器上的 DB2 控制中心删除旧主机名的条目,然后单击“添加系统”菜单以发现要添加新主机名的新主机名。如果您从不使用Control Center等GUI工具,则此步骤可以忽略。而且,从DB2 V9.1开始,UNIX系统上将不再提供控制中心等GUI工具。
注意:
从 DB2 V9.1 FP2 开始,DB2 支持域用户组作为扩展的 Windows 安全性。因此,当您要更改计算机名称时,计算机用户组 DB2ADMNS 和 DB2USERS 是本地用户组,您必须更新全局注册表变量 DB2_ADMINGROUP 和 DB2_USERSGROUP。计算机主机名更改并重新启动后,使用以下步骤修改注册表变量:
1.打开命令行
2.执行db2extsec命令更新安全设置
db2extsec -a \DB2ADMNS -u \DB2USERS