在设置外网访问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端口也设置成例外。