救命,500分问题求救,数据库进程堵塞的问题,钱不够可以再加(300分)

  • 主题发起人 主题发起人 kccp
  • 开始时间 开始时间
是跟网络有关,我碰过sybase 11.9.2,11.0.5,12都有这个问题,用户连接数不断增长,直
到它的配置极限,这时其它机器再也登录不上去了。
比如说,一个程序正常运行时,把网线拨掉,杀掉进程,插上网线,重新进去,那么它在
服务器上的旧会话就留在那了。也可能跟BDE有关吧,
我的解决办法是,用一个程序不断地扫描,发现有相同的机器名的会话就全部KIll掉。
这个办法可行,客户端基本上感觉不到自己被KILL了,程序会自已自动连接。
 
glbboy是谁怎么这么可笑?
>>人家都已经是成熟的产品了,你一位玩玩小打小闹,说改就改?
成熟的产品就不需要修改?DOS够不够成熟?MS干嘛改成Windows?

>>肯定是数据库本身的问题了。你叫他们买正版好了,要不也不关你事。^_^
你怎么肯定人家不是正版?然后你又怎么肯定是数据库本身的问题?

>>话说回来我从来没觉得ODBC有什么不好?速度快就是它的最大优势。
我说过ODBC不好了吗?我是ODBC/BDE说不好。兄弟,Borland已经不再升级
BDE了,MS也不再升级ODBC了。而且ADO和ODBC调用的是同一个底层,你凭
什么断定ODBC比ADO快?自打使用Delphi以来我就没有用过一次BDE。记得
99年为这个话题还和huizhang在本论坛讨论过这个话题。
 
我没有说不需要修改,而是不应该选择这样的修改。
也不要说什么MS干嘛改成Windows。有你这样比的吗?
我绝不相信他们会按你的改。而且就目前来说,BDE速度上面的优势还是很明显的,
有什么理由需要改用ADO,方便吗?对于会的人来说BDE有什么不方便的??
 
用BDE的話,最好用SESSION。
還要設LOCALSHARE為TRUE。
這三十個用戶同時使用就應該沒問題。
 
我用ADO+SQLSERVER2000,多个客户端中如果有一个客户端的事务处理没有完成,
整个系统全塞车了。
 
>>人家都已经是成熟的产品了,你一位玩玩小打小闹,说改就改?
这句话明摆着就是说不用改嘛。这和MS改成Windows不是一个道理吗?
难道你以为MS在小打小闹?

我可以肯定地讲,如果不放弃BDE一定是死路一条!改不改为三层倒在其次。
本论坛讨论这个话题的贴子不下100个,有的人改用Zeo,有的人改用DirectSQL,
都可以解决问题,但我的经验ADO解决得最好!
DirectSQL使用的是Lib,但加载时含有处理其它九种数据库的代码,我认为有些多余,
所以不太赞同。
我一直认为BDE只是为Delphi解决访问数据库的统一接口而设计的,兼作为访问Borland
数据库的原生代码,而其它系统只有通过ODBC来访问。如果不需要这个统一的接口,BDE
没有存在的必要。为什么BDE没有ADO接口?足以说明这个问题。
 
網絡數度,換網卡100,switch 1000 (server).try it !!!
[8D][8D][8D]
 
ask sql server administrator
and users ?[8D][8D][8D]
 
我不知道为什么“改成ado”就“没有问题”了?
我虽然没遇到这种问题,但速度问题一直在困忧着我,也曾想把整个系统全改成ado,
可也不知道adb比bde到底有哪些有优点,真希望谁能专业地给我解释解释!
 
我遇到过,删除DSN重建就可以了
 
我在oracle 遇到过这个问题,解决方法如下:
在oracle中设定profile 的idle_time 不要用default
改为5分钟即可在5分钟之后自动kill掉没有活动的session
但本人不懂sql 2000 ,不知有否同样的参数设置,
也可设定最大link数量,但这样数据库会变慢,直至死掉。
 
这应该sql2000的一个bug,经常的进程阻塞
 
多人接受答案了。
 
后退
顶部