首页 > 学技术 > 技术网文 > Informix > 正文

[精华] 请问这个128的限制可以突破吗?


来源 chinaunix.net 酷勤网整理

在用户数达到一定程度,系统就不能继续接收用户注册了,
onstat -u信息如下:
a24759a4 Y--P--- 11862    user001  ttyp21   a316ca2c 0    5     50       91

a2476374 Y--P--- 11774    user002  ttyp50   a316c850 0    2     63       0
a247685c Y--P--- 11531    user003  ttyp40   a3b1acd4 0    1     1        50
a2476d44 Y--P--- 11849    user002  ttyp26   a2a2d620 0    2     0        0
a247722c Y--P--- 11467    user003  ttyp18   a316c014 0    1     735      464
109 active, 128 total,118 maximum concurrent

109 active, [color=red]128[/color] total,118 maximum concurrent
请问这个128的限制可以突破吗?



 ifx 回复于:2003-05-13 16:38:15

如果你的是那种EEU版本的,就没有这个限制,可以动态的增加(当然要做好NETTYPE的配置)。


 muzx 回复于:2003-05-13 17:42:28

我的版本信息
SCO UNIX 5.0.5
Informix Dynamic Server Version 7.31.UC7
#
NETTYPE         tlitcp,2,100,CPU


 蓝色键盘 回复于:2003-05-13 17:55:42

NETTYPE tlitcp,2,100,CPU

仅仅是128,会不会是应用的问题??


 muzx 回复于:2003-05-13 17:59:59

这正是我想知道的。应用应该没有问题。


 蓝色键盘 回复于:2003-05-13 18:10:03

Version 7.31.UC7 
这个版本好像没有做用户数128的限制,我在hp-11中,也是一样的版本如下配置也能突破128的

NETTYPE         soctcp,1,150,NET


 大梦 回复于:2003-05-13 19:33:30

你的系统不能注册,是不是你操作系统用户数有限制呀!

informix没有这个限制!
只要你的机器性能好是可以调的!


 ifx 回复于:2003-05-13 20:15:16

连接时报错吗?错误号是什么?


 hero99zy 回复于:2003-05-13 20:41:14

应该不是数据库的问题,你的当前active用户线索才109 。


 muzx 回复于:2003-05-14 09:07:20

我的系统[color=red]license[/color]已经加到[color=red]275[/color]用户了
当时的错误号[color=red]-27002[/color]
查手册知
-27002 在OnLine静态方式中,不允许连接
但是[color=red]onstat -[/color]显示系统仍然处于online状态
Informix Dynamic Server Version 7.31.UC7    -- On-Line -- Up 17 days 01:36:34 --593920 Kbytes

而且已经注册进系统的用户工作完全正常,只要不退出,可以一直工作。但此后一旦退出,就不可再登录了(系统级登录可以,数据库级不行),即使所有用户全部退出也无济于事,只有重新启动informix才可使用。
另外我的内核参数[color=red]MAXUP[/color]已经加到[color=red]300[/color]了。
不知何故?


 大梦 回复于:2003-05-14 09:46:56

让用户使用不同的方式!
你可以多建几个unix用户来同时处理!
一部用户用ontlitcp方式,一部分用户用onipcshm方式就行了!
你在sqlhosts应该指定了的!
只需要在.profile中INFORMIXSERVER使用在onconfig定义的数据库服务器名或数据库服务嚣别名就行了!


 muzx 回复于:2003-05-14 12:36:38

谢谢斑竹,最近这几天用户数不是很多,到时候我试试看。


 蓝色键盘 回复于:2003-05-14 13:41:36

用户访问数据库地权限没什么问题吧,再者,数据库没有做什么改变参数的动作吧


 muzx 回复于:2003-05-14 14:16:50

权限不会有问题,系统中只有4个用户账号分别处理四种不同类型的数据。
只有在使用数据库的用户登录数超过100(who|wc -l)时才出现拒绝连接数据库(不于数据库打交道的用户仍然可以登录)的情况。只要不超过100,系统完全正常。


 蓝色键盘 回复于:2003-05-14 14:27:38

只有在使用数据库的用户登录数超过100(who|wc -l)时才出现拒绝连接数据库

informix配置的核心参数没什么问题吗?够吗?

(不于数据库打交道的用户仍然可以登录)

这说明系统允许的某一用户拥有的最好进程数目还没有达到上限。属于正常


 muzx 回复于:2003-05-14 15:05:15

与informix有关的核心参数全部是按informix要求逐个修改的,个别参数根据系统硬件实际相应加大了。比如共享内存等。


 ifx 回复于:2003-05-14 20:26:10

可能是该用户(Informix)拥有的文件数不够了,需要调整核心参数。
因为每一个session都需要占用文件描述字的。


 hero99zy 回复于:2003-05-14 20:32:05

看看核心参数NOFILES项,默认的好像是110 ,建议你调大到500 。


 jack707 回复于:2003-05-14 22:21:22

引用:原帖由 "大梦" 发表:
让用户使用不同的方式!
你可以多建几个unix用户来同时处理!
一部用户用ontlitcp方式,一部分用户用onipcshm方式就行了!
你在sqlhosts应该指定了的!
只需要在.profile中INFORMIXSERVER使用在onconfig定义的数..........



我遇到过这个问题,用的就是这方法解决,为什么就不清楚了。


 大梦 回复于:2003-05-15 09:11:18

其实就是对用户进行了分流,采用不同的方式,使系统比较平衡!


 ifx 回复于:2003-05-15 09:13:21

每个进程也有打开文件数的限制,这个也可能限制你的连接数


 muzx 回复于:2003-05-15 09:29:34

谢谢各位大虾,我将按照各位的建议一一尝试!


 muzx 回复于:2003-05-15 10:27:55

核心参数
NOFILES  110-->;300

超过100可以了
但128仍然有待解决。
onstat -u

Informix Dynamic Server Version 7.31.UC7    -- On-Line -- Up 18 days 02:41:51
.
.
.

 111 active, 128 total, 122 maximum concurrent



 大梦 回复于:2003-05-15 10:34:46

你的数据库有问题吗?


 hero99zy 回复于:2003-05-15 14:06:47

128是总数,你的用户数如果超过128 ,数据库又会自动分配一个totoal数,没准会是128*2=256呢,你可以测试一下吗?


 muzx 回复于:2003-05-15 16:56:49

to 大梦:
数据库一切正常,每天有大约60~90用户使用。dbexport,ontape自动备份都很正常。
to  hero99zy :
如果是这样,那就太好啦!但愿如此,啊门!


 muzx 回复于:2003-05-16 12:35:06

还有那位遇到过此类问题没有?怎么解决的?


 大梦 回复于:2003-05-16 14:17:27

我的也是这样的!


 muzx 回复于:2003-05-16 23:54:20

怎么处理的?现在怎么用?限制用户登录还是其他?最大连接(数据库级)达到过多少?


 大梦 回复于:2003-05-17 10:19:49

引用:原帖由 "hero99zy"]128是总数,你的用户数如果超过128 ,数据库又会自动分配一个totoal数,没准会是128*2=256呢,你可以测试一下吗?
 发表:




不要被128迷失了方向!


 muzx 回复于:2003-05-17 11:38:16

谢谢!


 zzher 回复于:2003-05-19 13:38:33

我也是这个问题,以前用户数不能超过103.
后使用大梦的方法,现在已经122了,因为没有再多的用户,不知道它下一个上限会是多少!


 大梦 回复于:2003-05-19 14:23:45

呵呵~~~
在122的时候,你再开几个telnet进去后再测试一下!


 zzher 回复于:2003-05-20 14:50:07

大梦你要么帮着来TELNET???

嘿嘿!


 zzher 回复于:2003-05-20 14:50:28

大梦你要么帮着来TELNET???

嘿嘿!


 大梦 回复于:2003-05-20 16:31:06

好的!
我怕你的机机被telnet破了!


 vlight 回复于:2003-05-22 17:54:21

偶是个unix盲
打开核心参数里面,没有NOFILES的设置项啊
sco unix 5.05


 muzx 回复于:2003-05-22 18:55:28

/etc/conf/cf.d/mtune
NOFILES         110     60      11000


只要将第一个数字110修改为你所需要的就OK。


 大梦 回复于:2003-05-22 21:35:11

分别是:当前值、最小值、最大值


 qian_1974 回复于:2003-05-24 14:09:25

自己写个多进程程序测试一下就可以了,出错时可看sqlcode和online.log,应该可发现问题。


 vlight 回复于:2003-05-28 11:14:37

搞定,目前连接数100左右,暂时还没有继续出现该问题
目前的NOFILES=350


 stanlee 回复于:2003-06-23 18:01:42

这个“128”应该是操作系统的核心参数--最大连接数,在Sco Openserver中是128,象Aix操作系统这个数是“1024”,而与Sco
的license或者NETTYPE的定义无关。


 zoukunhong 回复于:2003-06-24 09:47:07

引用:原帖由 "muzx" 发表:
恕?
不知何故?

     
推出的应用可能还没有释放所使用的资源,所以需要杀死该会话或重其数据库才能重新连接。将核心参数中的NOFILES增大,可以增加用户连接数到130-160,再往上增加就要收到系统资源的限制,如内存等。


 admirer 回复于:2003-06-27 09:21:23

哈哈!
告诉大家一个好信息:
我的系统今天上午连接数达到126了,为了试验这个128我连续登录了3个用户,到第三个用户登录时系统停留约10秒后,登录成功,
onstat -u
129 active, [color=red]256[/color] total, 129 maximum concurrent
现在已经到134了!
134 active, 256 total, 134 maximum concurrent
前提是:
修改onconfig文件,定义NETTYPE增加允许用户连接数
修改系统参数
NOFILES
MAXUP


 klrs 回复于:2006-03-30 16:28:49

楼主,不知道你的问题解决了么?
我遇到过类似这样的问题,解决方法是调整核心参数。
SHMMNI 把它调大到你需要的数字就可以了,原来默认的好像是100。
你可以试一试,用sh,打开dbaccess,或者isql,就可以测试。


 wangzhenghua 回复于:2006-03-31 12:00:03

我在 SCO 5.06/Informix 7.31UC5 上最多有300多个Active
Informix 以128为单位进行分配, 如果连接数超过128,total就会变为256
不行的话可以查查配置, CPU线索受CPU VP个数限制,换NET试试




原文链接:http://bbs.chinaunix.net/viewthread.php?tid=67144
转载请注明作者名及原文出处



收藏本页到: