二层应用真的不能通过internet访问数据库?(100分)

  • 主题发起人 主题发起人 Northwind
  • 开始时间 开始时间
N

Northwind

Unregistered / Unconfirmed
GUEST, unregistred user!
sql server2000 数据库服务器有内网ip和外网ip,分别可以从内网和外网访问,外部访问通过防火墙访问数据库,设备运行正常.

有一个二层的小程序,ADOConnection + SQL Server方式访问数据库,在局域网内应用正常,现在需要个别人从internet访问该数据库.但是ADOConnection连接数据库时出错:
([DBNETLIB][ConnetionRead (recv()).]General network error. Check your network documentation)
是ADOConnection方式不支持从internet访问数据库,还是其他原因?
能否做很少的改动就能实现从internet访问.难道一定要该为三层方式才行码?
 
除非用VPN,否则二层方式当然不能通过internet访问。
 
用WEB方式做的二层也不能通过 INTERNET访问吗?
 
采用dbanywhere4-p2p组件吧,二层的系统稍微修改一下,就可以高速地跑在internet上,太方便了,下载地址: http://www.hbbonny.com/download/dbanywhere4.rar
 
可以肯定的说,只要有外网IP的话,sqlserver是可以通过internet访问的。
问题可能再你的防火墙上,1433端口开放了没有?
 
SQL Server里的服务器端网络实用工具里把多协议给启用,最好再把1433端口改一下,因为有的电信、铁通等会把1433端口给封了
再客户端连接时先在客户端网络实用工具里配置一下
 
同意!使用VPN!
 
建议减少投资不是更好吗?点多了,使用vpn增加投资太大
 
如果外网功能要求不多,还是做成web比较好
 
直接开放SQL Server服务器就行了
 
直接开放 sql server 太危险了吧.

www.hbbonny.com
 
直接把数据库放在外面,好容易被黑数据的~
 
主要不想太多的修改程序,本来程序在局域网内运行是很好的。
‘差不多算了’你提供的方法要用到第三方控件,也要花钱,不可行!
 
dbanywhere4-p2p很便宜啊,才500块,您看看效果就会发现买的值不值了,
呵呵.
 
dbanywhere4-p2p 实际上也是三层的--别人帮你实现而已!
 
to northwind

呵呵,您肯定没有使用过dbanywhere4-p2p,和三层的不同,和两层的也不同,底层的通讯也不同,并发,速度,效率要高太多了,采用rudp协议设计的.
 
为了让远程客户端可通过因特网访问MSSQL服务器,需设置MSSQL:
打开“企业管理器”,选择相应的SQL服务器,在右键菜单中选择“属性”,选择“常规”选项卡中的“网络配置”按钮,在打开的窗口中将“启动 WinSock 代理”勾上,然后设置“WinSock 代理地址”为服务器在因特网上的 IP 地址(可为代理 IP 地址,如通过“花生壳”之类的 IP 代理软件),设置“WinSock 代理端口”为SQL Server的监听端口号(默认为1433,与“启用协议”中“TCP/IP”中端口号一致),这样,就可以通过 IP 地址来访问远程SQL服务器了。
 
dreamisx:
用你的办法设置以后,还是出现相同的错误.
([DBNETLIB][ConnetionRead (recv()).]General network error. Check your network documentation)
 
不知你怎么做的?我的方法是经过检验的。
 
后退
顶部