DB2 db2icrt The host name "xxx" is invalid. Specify a valid host name

有这样一个现象,在DB2安装后,使用db2icrt 来创建实例时,提示主机名无效,提示如下:


[root@centos-0 instance]# ./db2icrt -u db2inst1 db2inst1
The host name "centos-0.msdomain" is invalid. Specify a valid host name. 
DBI1922N  The host name is not valid.

Explanation: 

The TCP/IP host name parameter is not valid or does not exist.

User response: 

Ensure that TCP/IP is operational on the system. If a domain name server
is used, ensure that the domain name server machine is active. Issue the
command again using the correct TCP/IP host name.


DBI1079I  Output is saved in the log file /tmp/db2icrt.log.2816.

Explanation: 

All processed and failed operations have been saved into this log file.

User response: 

Do not modify this file in any way. This file is for IBM Technical
Support reference.


/opt/ibm/db2/V9.7/instance/db2iutil: line 2528: DB2INSTVER: parameter null or not set


检查 /opt/ibm/db2/V9.7/instance/db2iutil 文件(非提示的2528行),发现有如下内容

${DB2DIR?}/instance/db2isrv -addfcm -i ${INSTNAME?} ${DB2ISRVOPTS?}


 if [ $? -eq 3 ]; then

db2isrv



${DB2DIR?}/instance/db2isrv -addfcm -i ${INSTNAME?} ${DB2ISRVOPTS?}
        if [ $? -eq 3 ]; then
            display_msg ${DB2CAT?} 922 \
                        'DBI1922N  The host name is not valid.\n'
            stop_prog 1
fi
 
  
就是当db2isrv -addcfm -i ${INSTNAME?} ${DB2ISRVOPTS?} 返回为3的时候提示主机名称不正确。
这个db2isrv 找了很多东西,没找到具体的内容,看名字是给系统增加一个服务。后面是addfmc ,这个fmc是DB2的故障守护进程。
这个是监测DB2实例正常运行,当实例异常宕机后,它会自动启动实例。那么以上的错误可以连起来了:
再给系统增加一个DB2守护进程的时候失败了,原因是主机名不对。
好的,看一下主机名定义

[root@centos-0 instance]# hostname
centos-0.msdomain
这没问题
再看

[root@centos-0 instance]# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

这个地方不知为什么CENTOS装好之后没有修改,修改一下。修改后内容如下

[root@centos-0 instance]# vi /etc/hosts
127.0.0.1   localhost centos.msdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

保存再次执行创建实例,正常


你可能感兴趣的:(数据库-DB2)