65.9K
CodeProject 正在变化。 阅读更多。
Home

配置 SQL Server 的命名管道和 TCP/IP 设置

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.80/5 (2投票s)

2021年10月27日

CPOL

4分钟阅读

viewsIcon

10802

如何配置 SQL Server 中的命名管道和 TCP/IP 设置

引言

在本技巧中,我们将配置 Windows 计算机上的 Microsoft SQL Server 来监听特定的 TCP 端口。我们将启用 TCP/IP 和命名管道,并配置防火墙规则,以便其他网络计算机可以与 SQL Server 实例进行通信。

先决条件

  • 安装在计算机上的 Microsoft SQL Server(请参阅我的文章 此处 了解如何安装 SQL Server)。

配置命名管道和 TCP/IP 协议

让我们首先为 SQL Server 配置 命名管道TCP/IP。我已在我本地计算机上安装了 SQL Server 2019。

步骤 1

开始 菜单打开 SQL Server 配置管理器

Configure Named Pipe and TCP/IP Settings of SQL Server

第二步

首先,让我们为 SQL Server 实例(在本例中为 MSSQLSERVER)启用 命名管道。转到 SQL Server 网络配置(在控制台窗格中),然后单击 MSSQLSERVER 的协议

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 3

在详细信息窗格(右侧面板)中,右键单击 命名管道 协议,然后单击 启用 以启用该特定 SQL 实例的命名管道。

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 4

接下来,我们将为 SQL Server 实例启用 TCP/IP 连接。因此,右键单击 TCP/IP 协议,然后单击 启用 选项。

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 5

现在再次右键单击 TCP/IP 协议,然后单击 属性 选项。

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 6

现在您可以看到 TCP/IP 属性 窗口,单击 协议 选项卡,在 全部侦听 属性中选择

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 7

现在单击 IP 地址 选项卡,向下滚动到 IPALL 部分。现在将 TCP 动态端口 属性的值更改为空。如果其值为 ,则数据库引擎将监听动态端口。接下来,在 TCP 端口 属性中,输入此 IP 地址要监听的端口号(在本例中为 1717),然后单击 确定 按钮。您也可以通过用逗号分隔来指定多个端口。

Configure Named Pipe and TCP/IP Settings of SQL Server

注意:如果要使用单个 IP 地址(IPn 部分),请在 协议 选项卡中将 全部侦听 属性设置为 。在这里,我想使用 IPAll 部分,为此,我在 协议 选项卡中将 全部侦听 属性设置为

步骤 7

上述配置将在我们重新启动 SQL Server 实例服务后生效。因此,现在从控制台窗格中选择 SQL Server 服务 选项。

步骤 8

现在,右键单击 详细信息 窗格中的 SQL ServerMSSQLSERVER),然后单击 重新启动 按钮以重新启动 SQL Server 服务。

我们已成功配置 SQL Server 数据库引擎实例以使用 SQL Server 配置管理器监听特定的固定端口。接下来,我们需要配置防火墙,以便在防火墙中打开指定的端口(在本例中为 1717)。

允许 SQL 端口的防火墙配置

既然我们已配置 SQL Server 监听特定端口,我们就需要打开防火墙中的该特定端口。让我们看看如何配置防火墙。

步骤 1

从开始菜单打开 Windows Defender 防火墙

Configure Named Pipe and TCP/IP Settings of SQL Server

第二步

您将从 控制面板 中看到 Windows Defender 防火墙 窗口。单击左侧窗格中的 高级设置 链接。

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 3

现在您将看到 带高级安全性的 Windows Defender 防火墙 窗口。单击左侧窗格中的 入站规则,然后单击右侧窗格中的 新建规则 按钮。

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 4

现在您将看到 新建入站规则向导 窗口。在 规则类型 步骤中,选择 端口,因为我们希望从防火墙允许 SQL 端口 1717,然后单击 下一步 按钮。

 

步骤 5

协议和端口 步骤中,选择 特定本地端口,并在文本框中输入我们的 SQL 端口 1717,然后单击 下一步 按钮。

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 6

操作 步骤中,选择 允许连接,然后单击 下一步 按钮。

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 7

配置文件 步骤中,勾选所有复选框,然后单击 下一步 按钮。

步骤 8

名称 步骤中,为规则指定一个有意义的名称,并提供描述,然后单击 完成 按钮。

Configure Named Pipe and TCP/IP Settings of SQL Server

步骤 9

现在您可以看到我们的新规则已列在 入站规则 列表中。

Configure Named Pipe and TCP/IP Settings of SQL Server

太棒了!我们已成功配置防火墙以打开 SQL 端口,以便从外部进行数据库实例连接。

预期的错误/问题

有时,即使在进行上述配置后,您也可能遇到从外部连接 SQL Server 实例的一些问题/错误。请确保

  1. SQL Server 配置管理器 的控制台窗格中,单击 SQL Server 服务,确保 SQL Server 浏览器 服务正在运行。
  2. 如果您分配的 SQL 端口不是 1433,则必须在 SQL 连接时在服务器名称中指定端口号。例如,在本例中为 cloude-desire-01, 1717

结论

如您所见,如果您准确遵循以上步骤,为 SQL Server 实例配置特定端口的外部访问非常容易。

历史

  • 2021 年 10 月 27 日:初始版本
© . All rights reserved.