db2set DB2INSTPROF创建实例导致实例启动出现1042错误,db2set -all无结果

今天学习db2创建实例,看着挺简单的就两条命令,但就是这两条简单的命令折腾了我好久,心急如焚啊。

按牛老师书中所说的,在创建实例之前需要执行db2set DB2INSTPROF=C:\INSTPROF命令。环境变量DB2INSTPROF表示缺省实例目录,执行完命令理论上来说会改变缺省实例目录。接着执行db2icrt prod命令创建新的实例,提示DB20000I  DB2ICRT 命令成功完成。看似已经大功告成了,但是试着执行db2stop或者db2start(出现1042错误)操作失败。为什么这是为什么?接着我们修改操作系统中环境变量DB2INSTANCE的值为prod(刚才新创建的实例),再次执行db2stop或者db2start命令你会发现成功了,但是之前的实例却无缘无故失效了。我们在msc中启动之前的实例所对应的db2服务提示这不是微软服务,这是怎么个情况?

我们只需要把刚才的实例删除再重新创建就可以了,很奇怪啊。即使你在创建实例之前更改了DB2INSTPROF的值,实际上创建的实力还是在默认实例目录中,为了避免不必要的麻烦,建议在创建实例前就不要执行“db2set DB2INSTPROF=C:\INSTPROF”命令,给自己找麻烦。至于根本原因本人还未找到,希望明了者能够告诉我,先谢谢您!!!

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