启动COGNOS8服务常见的问题解决办法
安装BISERVER后无法启动cognos configuration,报jdk错误。 解决办法: 有两种,一种是在启动 cognos configuration的快捷方式后面加上“java:local”参数,这样会试用cognos自己的jdk。但是有个弊端,就是cognos8服务还会试用系统自己的jdk,启动服务的时候会提示服务无法响应,看csserverlog日志的话会说无法加载一个java类。
第二种方法是把\\cognos\\c8\\bin\\jre\\1.4.2\\lib\\ext\\bcprov-jdk13-125.jar这个文件拷贝到java_home的jdk下的jre目录下的\\lib\\ext目录下即可. 这里推荐第二种方法。
启动COGNOS8服务的时候提示CM-REQ-4252 Unable to find the object \错误。 这个错误出现的原因是你的内容库试用的是oracle,而且oracle数据库没有试用UTF-8编码。将内容库的oracle更改成UTF-8编码就可以解决问题。
jre 路径导致报错
这个时候我遇到一个问题,Cognos Configuration 无法正常启动,提示信息忘记截图了,不过这个问题比较简单。
错误提示中已经详细的描述了解决办法,其实是因为我的开发机上有Tomcat,设置了JAVA_HOME。
并且用的是JDK142的包,所以必须先修改其路径为Cognos的jre。否则启动Cognos Configuration的时候会报错。
Cognos8 The Database Connection Failed .运行数据库无法连接
遇到这个问题,是因为jdbc的缘故,如果是Oracle作为运行数据库,就会遇到。 将oracle\\jdbc\\lib\\classes12.jar拷贝到Cognos8/webapps/p2pd/WEB-INF/lib下即可.
CFG-ERR-0106
这个问题就比较诡异了,反正就是启动超时。
其实,是因为开发机上跑的程序太多,资源占用厉害导致的。 最后确定的解决办法是修改配置文件,增加Cognos的启动时间。 修改 c8_location /configuration/ cogconfig.prefs 增加以下两个配置 ServiceWaitInterval= *默认是500,代表0.5秒 ServiceMaxTries= *默认360,代表倍数
默认应该是3分钟超时。我增加到 1000*500,8分多钟。
CFG-ERR-0103
我将 Cognos 8 Service 节点下的 Cognos8.3 删除,又重新建了一个,OK,神奇的解决了问题。
排查原因,发现是因为不小心在测试服务器的msconfig里将cognos的服务禁止了,服务禁用了,当然启不起来。
总结了下这个问题的原因,应该是因为Cognos主应用无法启起来,已知可能的原因如下:
1、Cognos数据库没有采用UTF-8的字符集(Oracle下常见)
2、系统服务中的Cognos服务被禁用,或受到其他第三方软件限制无法启动
CAM-AAA-0027
这个错误是在用Cognos SDK开发SSO的时候遇到的,利用SDk里的例子 TrustedSignonSample 程序实现SSO的时候遇到的。
0027可能是一个Cognos8.3的BUG,在正常运行的Cognos应用中,可能突然会出现。 但是错误信息和我遇到的不同:The function call to 'CAM_AAA_Authenticate' failed.Reason:\该问题的解决办法(百度搜的): 1、内存泄漏(最可能的原因)
如果服务器连续正常运行了一段时间后,突然报这个错,绝大部分原因是内存泄漏。 2、配置错误(较少可能)
比如你为 Cognos 配置了超出服务器所能提供的资源时,就会出现这个错。
不过不符合我们的现状,估计这个错误的原因应该还是SSO接口的问题,只是遇到同样的错误代码而已。
后来发现SDK的这个例子,其实是类似代理的方式,通过Cookie传参,登录Cognos的另一个认证,比如NTLM。
并不是如我们早期想的那样,认为 TrustedSignonSample 是一个独立认证。 所以在配置一个命名空间为 TS 的 NTLM 认证后解决了这个问题,其实很简单,应该就是认证找不到指定的命名空间,重试次数达到了10次。
CAM-AAA-0064
['CognosJavaProvider']
1. [ ERROR ] CAM-AAA-0064 The function 'CAM_AAA_JniAuthProvider::Configure' failed. CAM-AAA-0154 Unable to load the Java authentication provider class 'TrustedSignonSample'. TrustedSignonSample (Unsupported major.minor version 49.0)
83的SDK的实现遇到0027问题后,考虑换到Cognos8.2的生产系统上去试,结果遇到了0064,版本问题,这个问题解决不了。
可能更新JniAuthProvider的jar包可以解决这个问题。
CM-CFG-5034:content manager failed to start because it could not load driver oracle.jdbc.driver.oracledriver 解决办法:在\\oracle\\product\\10.2.0\\db_1\\jdbc\\lib目录下找到classes12.jar,拷贝到\\cognos\\c8\\webapps\\p2pd\\WEB-INF\\lib下即可。
CFG-ERR-0106 Cognos Configuration did not receive a response from the Cognos 8 service in the time allotted.
解决办法:在文件cogconfig.prefs中加入如下内容: ServiceWaitInterval=1000 ServiceMaxTries=500
(后来又重装了一遍发现不加这个也可以,主要是数据库的问题。)
[Error]:The mail server cannot be reached. 解决办法:设置notification参数,如下: SMTP mail server: smtp.126.com:25
Account and password: 根据自己邮箱情况设置 default sender:邮箱地址AAA@126.com
如果装了McAfee,要把“访问保护属性”中的规则\sending mail,端口25\禁用掉,否则test会失败。
[ ERROR ] CFG-ERR-0103 Unable to start Cognos 8 service.
Execution of the external process returns an error code value of '-1'. 解决办法1:将Content Manager的数据源连接的oracle数据库字符集改为UTF8。(cognos的数据库第一次建时就是字符集就是UTF8的,报这个错,把数据库删了又建了一遍,只是把内容占用率由40%降到了20%,我的总内存是3G,再试就OK了。)