在启动TDS LDAP服务器时遇到一些问题,由于习惯使用Oracle数据库,而对DB2数据库比较陌生,在遇到这些问题时也是摸不到头脑,好在现在解决了,并把所遇到的问题罗列如下:
使用命令启动TDS LDAP 服务器:./ibmslapd -I ldapdb2 ,执行结果如下:
从上面的执行结果,很明显可以看到两个错误:
1、SQL1032N 未发出启动数据库管理器的命令。 SQLSTATE=57019
2、GLPRDB001E Error code -l from function:" SQLConnect " ldapdb2b
问题1解决:
问题1参考原文链接:http://blog.csdn.net/pursue168/article/details/6536386
在晚上查找发现问题1是因为db2没有启动,需要执行:db2start命令,在执行db2start命令时遇到如下错误:
SQL6048N A communication error occurred during START or STOP DATABASE MANAGER processing.
SQL1032N No start database manager command was issued. SQLSTATE=57019
我们需要修改db2下的db2nodes.cfg文件或者hosts文件
先看下db2nodes.cfg 和hosts文件的内容是什么?
vi db2nodes.cfg
vi /etc/hosts
明显可以看到db2nodes.cfg内的localhost在hosts文件没有定义
所以我们需要把db2nodes.cfg内的localhost修改为hosts文件中的linux-vm23.localdomain
接下来启动db2 正常的启动了!
再次使用命令启动TDS LDAP 服务器:./ibmslapd -I ldapdb2 ,执行结果如下:
我们发现问题1已经得到了解决,现在来全力解决问题2:
问题2解决参考链接:http://www-01.ibm.com/support/docview.wss?tcss=Newsletter&uid=swg21377253
执行命令:[idsadm@ibmecm bin]$ db2 list db directory,结果如下:
然而UAT环境中执行[idsadm@ibmecm bin]$ db2 list db directory,执行命令结果如下所示:
注:(UAT环境启动正常)
参照UAT环境,对其做更改如下所示:
再次执行命令:[idsadm@ibmecm bin]$ db2 list db directory,结果如下:
重新启动数据库:
db2 force applications all ;
db2stop force ;
ipclean ;
db2start ;
再次使用命令启动TDS LDAP 服务器:./ibmslapd -I ldapdb2 ,执行结果如下:
从打印的日志可以看到TDS LDAP服务已经启动成功!