三层结构与ORACLE8I的协调问题

luhongjun 2002-10-28 02:18:35
中间层使用ADO连接MS SQL SERVER2000,使用BDE连接ORACLE8I和SYBASE11.5一般情况下,没有问题,查询速度也可以。但有时(一般是一天左右)就出先ORACLE连接不上,连接MS SQL SERVER2000和SYBASE11.5没有问题,应用层和ORACEL数据库能PING通。为什么。

有时还会出现客户端无法连接应用服务器的情况。

客户端使用TSocketConnection连接应用服务器。

在客户端还经常在退出时出现错误。提示为:0x0046f711指令引用的0x0119dbe8内存。该内存不能为Read
...全文
75 25 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
猛禽 2003-01-08
  • 打赏
  • 举报
回复
这么老的贴又被翻上来了?^_^
cmsoft 2003-01-07
  • 打赏
  • 举报
回复
oracle不会,学习~~
RomanticProgrammer 2003-01-07
  • 打赏
  • 举报
回复
学习...再次学习.
warton 2003-01-07
  • 打赏
  • 举报
回复
很多人用oracle但都是不会配置,配置它是一门很深的学问!!!最好先检查一下配置!!!
warton 2003-01-07
  • 打赏
  • 举报
回复
肯定是oracle配置的问题!!!
warton 2003-01-07
  • 打赏
  • 举报
回复
老大们都来了??!!!up先!!
IT-司马青衫 2003-01-07
  • 打赏
  • 举报
回复
老大 听说你在做公务员啊!!!!!
这没你也成为专栏的作者了, 哈哈!!!!

我要去看看..............
  • 打赏
  • 举报
回复
嗬嗬,许久不见!
问好先,UP后!
PoneyChen 2002-11-15
  • 打赏
  • 举报
回复
建议使用SQL*Net的Log功能。我曾遇到个Oracle问题,开始上班时,大家连接Oracle没问题,过一段时间,出现问题,机器重启,开始OK,过一会重新出现。后来,跟踪Log,发现,Client连接Oracle 1521端口,Server返回Server dns name,client再使用Server dns name连接Server,而无法连接。经检查由于Client设置了2个DNS Server,第一个内部,第二个外部。Win2k run一段时间之后,就一直使用第二个dns server,导致无法解析Server name,从而连接失败。
不能确定你的问题原因,这些仅供参考。
gaofly 2002-11-06
  • 打赏
  • 举报
回复
谢谢Report

hait 2002-11-06
  • 打赏
  • 举报
回复
我的项目用的是bcb6,中间层用Ado和oracle8i相连,没出现过这种情况。建议用ado连接oracle8i试一下,我没用过bde连接数据库,一些资料上讲,bde存在一些bug,并且bde也已进入维护阶段,不再怎么升级。
虽然SCKTSRVR存在一些问题,但我感觉连接数据库的问题并不在此。
也非常感谢Raptor兄的发言!
mynameis007 2002-10-31
  • 打赏
  • 举报
回复
luhongjun(过江项羽) 大哥真是难得一见啊。。
学习ing
猛禽 2002-10-31
  • 打赏
  • 举报
回复
一般应用服务端不会出异常,它会把异常传递到客户端的。最好在客户端通过ClientDataSEt的OnReconcileError事件检查一下出错的原因。
ORACLE连不上时,你在应用服务器端用SQL EXPLORER连一下试试。

应用服务器当掉好像也是比较常见的问题,我习惯把SCKTSRVR的超时设置为半小时,而不是默认的无穷大,为保证客户端不会因超时被服务端断开,在客户端用一个定时器,定时调用服务端的一个方法。这样可避免因当掉的SOCKET连接占用服务端资源,据说SCKTSRVR有不少问题,但我没有全部研究它的代码,只看了一部分,发现过一些小问题(如前面所说的不能关机等)。
cuilin2002 2002-10-31
  • 打赏
  • 举报
回复
学习一下
luhongjun 2002-10-30
  • 打赏
  • 举报
回复
CSDN怎么了,一直无法登陆。
luhongjun 2002-10-30
  • 打赏
  • 举报
回复
Raptor(猛禽) :在客户端显现的错误是“连接ORACLE错误”,应用服务器端,没有异常。所有客户端连接ORACLE失败,但访问其他两种数据库正常。

应用服务器端有时还会“不响应”这时所有的客户端都连接不上。只能重起应用服务器端,才可恢复正常。

我SOCKETCONNECTION的SUPPORTCALLBACK已经设为false了。

SCKTSRVR怎样修改?没有做过。

gfh21cn 2002-10-30
  • 打赏
  • 举报
回复
UP
猛禽 2002-10-29
  • 打赏
  • 举报
回复
终于看到了.不过我不知道:"但有时(一般是一天左右)就出先ORACLE连接不上"时是出什么错?应该跟BDE有关.

客户端无法连接是出什么错?是个别客户端不能连,还是所有客户端都不能连?

客户端在退出时出AV错误基本上可以肯定是程序中有重复释放的东东,检查一下程序吧.

另,用SOCKET连接时,我有个建议:将SOCKETCONNECTION的SUPPORTCALLBACK设置为FALSE,它会带来很多问题.

必要的情况下,最好改写一下SCKTSRVR,它也有一些问题,比如它运行的时候不能关机等.
gfh21cn 2002-10-29
  • 打赏
  • 举报
回复
那你先查查毒
估计应该不是病毒
UP
ChineseBcb 2002-10-29
  • 打赏
  • 举报
回复
gfh21cn(葛凤华) :
谢谢你的热心,连接ORACLE不是一直联不上,是开始能连上,使用一段时间后不能连接,重新启动应用服务器后,又好用。

连接ORACLE我用的BDE连接,没有使用ADO,ADO比BDE查询速度慢很多。

我的环境是,应用服务器一台,内存750M,CPUPIII850,硬盘20GSCSI,WINDOWS ADV SERVER
数据库服务器:内存512M,双CPU PIII850,WindowsNT4.0 pack 4,ORACLE8I
客户端Windows2000或98共有240个工作站。

开发语言BCB5.0使用MIDAS开发。
以前没有出现过类似的问题,只是最近此现象非常频繁,已经重新安装过应用服务器的操作系统,但问题依然。

在应用服务器中可以看到T(a).exe,T(b).exe(a,b为下脚标)两个不明进程,不知是不是木马程序?谁见过?



加载更多回复(5)

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧