可以使用基于 ODBC 或 DB-Library 的 SQL 查询分析器或客户端应用程序,通过 Internet 连接到 Microsoft® SQL Server™ 实例。为了在 Internet 上共享数据,必须将客户端和服务器连接到 Internet。另外,必须使用 TCP/IP 或多协议 Net-Library。如果使用多协议 Net-Library,请确保启用 TCP/IP 支持。如果服务器已注册域名系统 (DNS),就可以用其注册名进行连接。尽管这种连接不如通过 Microsoft 代理服务器连接安全,但使用防火墙或加密连接有助于保证敏感数据的安全。对 SQL Server 使用防火墙系统
许多公司使用防火墙系统防止从 Internet 无计划地访问其网络。防火墙可用于限制 Internet 应用程序访问您的网络,其方法是只转发目标为本地网络中的特定 TCP/IP 地址的请求。对所有其它网络地址的请求都将被防火墙阻塞。通过配置防火墙使之转发指定 SQL Server 实例的网络地址的网络请求,即可允许 Internet 应用程序访问本地网络中的 SQL Server 实例。若要使防火墙有效地工作,必须确保 SQL Server 实例始终在配置防火墙转发的网络地址上监听。SQL Server 的 TCP/IP 网络地址由两部分组成:与计算机中的一个或多个网卡相关联的 IP 地址,以及专用于 SQL Server 实例的 TCP 端口地址。默认情况下,SQL Server 默认实例使用 1433 号 TCP 端口。但是,命名实例在首次启动时,动态分配未使用的 TCP 端口号。如果另一个应用程序正在使用起始的 TCP 端口号,则该命名实例在以后启动时还可动态更改其 TCP 端口地址。如果当前正在其上监听的某个未使用的 TCP 端口还未动态选定,则 SQL Server 只动态更改到该端口。也就是说,如果该端口是静态(手工)选定,则 SQL Server 将显示错误并继续在其它端口上监听。另一个应用程序尝试使用 1433 不太可能,因为该端口已注册为 SQL Server 已知的地址。当对防火墙使用 SQL Server 命名实例时,请使用 SQL Server 网络实用工具配置该命名实例,使之在特定的 TCP 端口上监听。必须挑出在同一台计算机或群集上运行的另一个应用程序还未使用的 TCP 端口。有关各种应用程序注册用于使用的已知端口列表,请参见 http://www.ise.edu/in-notes/iana/assignments/port-numbers。请网络管理员配置防火墙以转发 SQL Server 实例正在其上监听的 IP 地址和 TCP 端口(使用默认实例的 1433,或使用配置命名实例在其上监听的 TCP 端口)。还应配置防火墙使其转发对同一 IP 地址上的 1434 号 UDP 端口的请求。SQL Server 2000 使用 1434 号 UDP 端口从应用程序建立通讯链接。例如,考虑有一台运行 SQL Server 的一个默认实例和两个命名实例的计算机。配置该计算机以便这三个实例监听的网络地址都具有相同的 IP 地址。默认实例将在 1433 号 TCP 端口上监听,一个命名实例可以分配 1433 号 TCP 端口,而另一个命名实例分配 1954 号 TCP 端口。然后应配置防火墙以转发对该 IP 地址上的 1434 号 UDP 端口以及 1433 号、1434 号和 1954 号 TCP 端口的网络请求。