| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3322 人关注过本帖
标题:外部网络远程连接局域网中的数据库
取消只看楼主 加入收藏
lljchi
Rank: 2
等 级:论坛游民
帖 子:172
专家分:95
注 册:2016-7-21
结帖率:96.15%
收藏
已结贴  问题点数:20 回复次数:5 
外部网络远程连接局域网中的数据库
分公司的电脑想共用总公司局域网的数据库,
用下面这段代码连接局域网内的SQL SERVER没问题,通过IP(公司的专线IP,非局域网IP)连接就提示找不到数据库,请高手看看,如何才能实现呢?

DECLARE INTEGER SQLConfigDataSource IN odbccp32 INTEGER, INTEGER, STRING, STRING   
lnWindowHandle=0  
lcODBCDriver='SQL Server' &&DRIVER类型  
lcODBCName='ks_xn'   &&数据源名字  
lcODBCDesc='' &&数据源描述  
lcODBCServer='***' &&SQL SERVER名字   服务器名\实例名 可用, 外网IP地址不可用
lcODBCDatabase='***' &&要连接的数据库名字
**先试图修改已有的ODBC,如果不存在,返回0。  
lreturn=SQLConfigDataSource(lnWindowHandle, 2, lcODBCDriver, ;
'DSN=' + lcODBCName + CHR(0) ;
+ 'Description=' + lcODBCDesc + CHR(0) ;
+ 'Server=' + lcODBCServer + CHR(0) ;
+ 'Database=' + lcODBCDatabase + CHR(0))
IF lreturn=0 &&不存在
**添加新的ODBC  
lreturn=SQLConfigDataSource(lnWindowHandle, 1, lcODBCDriver, ;
'DSN=' + lcODBCName + CHR(0) ;
+ 'Description=' + lcODBCDesc + CHR(0) ;
+ 'Server=' + lcODBCServer + CHR(0) ;
+ 'network=DBNMPNTW' + CHR(0) ;
+ 'AutoTranslate=No' + CHR(0) ;
+ 'Database=' + lcODBCDatabase + CHR(0))
IF lreturn=0 &&失败  
   MessageBox('添加ODBC数据源失败',16,'BUFFER')  
ENDIF  
ENDIF
搜索更多相关主题的帖子: IP地址 局域网 服务器 数据库 分公司 
2017-02-28 11:33
lljchi
Rank: 2
等 级:论坛游民
帖 子:172
专家分:95
注 册:2016-7-21
收藏
得分:0 
回复 4楼 厨师王德榜
谢谢,貌似VPN是最佳解决方案了,VPN除了翻墙用过,其他知识一点都不懂
2017-02-28 14:05
lljchi
Rank: 2
等 级:论坛游民
帖 子:172
专家分:95
注 册:2016-7-21
收藏
得分:0 
回复 6楼 mywisdom88
谢谢,申请了VPN试用后非服务器的电脑都可以互相访问,但是放数据库的服务器就是不可以访问,还没搞定,继续试验,程序中远程试图和spt交叉使用的,如果要全改成spt的就太麻烦了
IP,网关,防火墙等等 ,也不知道什么原因
2017-03-01 20:57
lljchi
Rank: 2
等 级:论坛游民
帖 子:172
专家分:95
注 册:2016-7-21
收藏
得分:0 
回复 8楼 qingfameng
正在一个个排除中
2017-03-01 20:58
lljchi
Rank: 2
等 级:论坛游民
帖 子:172
专家分:95
注 册:2016-7-21
收藏
得分:0 
又试了 windows server 2012 R2 自带的VPN,依然无果,
http://abool.blog.
完全按教程中的设置也不行,最后在客服端依旧连接不上
后面继续再试,猜测可能是下图静态IP填错的原因,教程中说填远程访问WAN地址,不知道是不是所谓的外网IP地址,之前填的都是内网地址
图片附件: 游客没有浏览图片的权限,请 登录注册

2017-03-02 16:35
lljchi
Rank: 2
等 级:论坛游民
帖 子:172
专家分:95
注 册:2016-7-21
收藏
得分:0 
原因基本找到了,还是外网IP的问题,在服务器外公司网络入口还有一道硬件防火墙Juniper SRX240(暂时没权限进入),
把VPN部署在内网服务器中是不行的,VPN服务器两块网卡设置时必须有一个IP是公网IP,所以VPN必须要在能连接外网的服务器中设置,
这款防火墙也带VPN功能,如果能获得权限再继续搞
2017-03-03 13:57
快速回复:外部网络远程连接局域网中的数据库
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013058 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved