在设置外网访问SQL2008数据库 之前,首先必须保证局域网内访问SQL2008没有问题 。那么,我们先来看看局域网内访问SQL2008数据库需要哪些步骤和设置,才能做到在局域网内任何一台机器上输入SQL2008数据库IP地址和端口号即能访问。
1.SQL2008数据库端设置
通常一台机器装上SQL2008后,要实现局域网访问SQL2008只要几步。
1)打开SQL2008配置工具,步骤:【开始】—>【所有程序】—>【Microsoft SQL Server 2008】—>【Configuration Tools】—>【SQL Server Configuration Manager】;
2)在打开的配置界面,双击左边【SQL Server 网络配置】,可以看到本机安装的数据库实例的协议,一般有【SQL Express的协议】和【MSSQLSERVER】的协议,如果你安装时不是使用默认实例名,那么在这里你应该找到自己需要设置外网访问的数据库实例名,双击它;
3)此时,可以看到四个协议,一般启用前三个,禁用最后一个,即启用【shared memory】、【named pipes】和【TCP/IP】,禁用【VIA】;
4)启用【TCP/IP】后,顺便应该鼠标右键该协议属性,设置下开放的端口,在IP1-IP9中都可以设置成1433,【活动】和【已启用】都选择【是】,最后一个IPALL也可设置成1433;ok,这时必须在配置页面的SQL Server服务项下面重启服务器,才能使得设置生效,如果这样还不行,建议重启电脑。
5)可以关闭了配置工具了,接下来打开【SQL Server Manager Studio】,登入您的数据库,打开后在【对象资源管理器】找到你数据库服务器的根节点,鼠标右键,选择【方面】,在方面下拉菜单下选择【外围应用配置】,在下面找RomoteDacEnabled,设置为True,然后重启数据库;(这个选项在我的设置过程中貌似没有起到作用,不设置为True好像远程也能访问);
6)设置到这里基本上就可以实现局域网内访问SQL2008数据库了。如果还不行,请将X:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\sqlservr.exe在windows防火墙中设置程例外,也将X:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe设置成例外,把1433端口也设置成例外。
‘贰’ 通过外网访问内网服务器上的SQL数据库
sql的身份验证估计选项不对。
打开企业管器〉〉sqlserver[local]实例上右击选择属性〉〉点击安全标签〉〉身份验证 请确认选择 sql server和windows 选项。保存重启看看。
如果不行再补充。
补充:内网对内网,外网对外网的时候就可以了.目前就是外网访问内网不行 什么意思?外网根据内往ip192.168.2.4来访问?
补充:外网访问内网使用据库的话你写的ip是192.168.2.4?这样不行的,外网不能直接访问内网,通过影射也是需要一个公网的ip[比如说我们宽带adsl上网时随即分配的公网ip,然后影射到局域网内的某台机器],这样外网才能通过这个公网ip和影射端口进行访问
‘叁’ 急~~外网连接不上有公网IP的SQL2000数据库
1.被连接的数据库安装机器必须装上SP3补丁。如果你没装,问题基本可以肯定在这里了,sp3指的是SQL的。
2.如果你的系统是vista或者win2008
那么是需要安装telnet服务的。在这俩系统里,是不自带telnet服务的。安装方法网上有
根据你补充的,我怀疑是你数据库的验证方式:是不是设置了仅仅windows登陆,没有设置密码验证或者交互方式登陆。