电脑技术学习

为什么修改机器名后DB2实例会无法启动

dn001
问题:为什么修改机器名后实例无法启动,并且报SQL6031N错误。

环境:

产品 DB2

平台 跨平台

版本8.1

解答:

DB2版本8开始,原来的DB2企业版和企业扩展版合并为企业服务器版,无论对于分区数据库和非分区数据库,在实例目录下都会有db2nodes.cfg文件,该文件记录了服务器节点信息。

以Windows平台为例,对于机器名为TSSTEST1上的一个单分区数据库实例DB2,在..SQLLIBDB2目录下db2nodes.cfg文件中记录了下面一行:

0 TSSTEST1 TSSTEST1 0

如果修改了机器的机器名,则需要修改该文件。比如如果修改机器名为TSCTEST1,则上面的文件需要修改为

0 TSCTEST1 TSCTEST1 0

否则,启动实据库实例时会报SQL6031N错误,原因码为10。

原因码10的解释是:

(10) 确保在 db2nodes.cfg 的第 "<行>"

行中定义的主机名值在系统上都定义了,并且可操作。

在Windows平台,如果定义实例为自动启动,或习惯在服务中启动实例,需要特别注意这个问题。