connect to $dbname 的时候报-25590,是怎么回事?
一个进程的子进程里面有如下连接数据库语句:$connect to $dbname as 'first' with concurrent transaction;
if (sqlca.sqlcode != 0) {
writelog("连接数据库[%s]失败[%d]\n",dbname,SQLCODE);
return(-1);
}
开始前1997次调用都没有报错,在1998调用的时候报-25590。
finderr 25590
Authentication error.
This error indicates that an invalid user ID or password was used to connect to the database server.
Provide a valid user ID and pssword.
报的这个错,很莫名奇妙,因为前1997次没有问题,为什么突然就不行了呢?
有哪位大虾知道问题在哪里呢?
[ 本帖最后由 kajing 于 2009-9-28 15:43 编辑 ] 超过连接的上限了? 原帖由 ziggler 于 2009-9-28 22:42 发表 http://bbs2.chinaunix.net/images/common/back.gif
超过连接的上限了?
不会啊,因为每次连接后,都用了disconnect的,现在怀疑是否程序有溢出造成报这个错。
有没有大虾知道如何跟踪这个报错信息,INFORMIX的log是否有详细的错误日志,或者能否
看到该次connect的用户与密码信息。 原帖由 kajing 于 2009-9-28 23:28 发表 http://bbs.chinaunix.net/images/common/back.gif
不会啊,因为每次连接后,都用了disconnect的,现在怀疑是否程序有溢出造成报这个错。
有没有大虾知道如何跟踪这个报错信息,INFORMIX的log是否有详细的错误日志,或者能否
看到该次connect的用户与 ...
超过数据库的最大连接数?你看看数据库的SESSION有多少个?
回复 #4 ziggler 的帖子
onstat -g ses看的是8个,而该用户只有2个session回复 #1 kajing 的帖子
问题已解决,不是数据库的问题,而是父进程没有释放句柄,导致打开的句柄超过系统的限制,居然在这里报的错,害我查了很久。不管怎样,谢谢ziggler 的帮助。
页:
[1]