AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题 / 204475
Accepted
SQLing4ever
SQLing4ever
Asked: 2018-04-20 14:18:07 +0800 CST2018-04-20 14:18:07 +0800 CST 2018-04-20 14:18:07 +0800 CST

动态端口被设置为不同的端口

  • 772

在我们的一个 SQL Server 实例(12.0.5571.0,如果您确实需要知道)上,我们使用多个 IP 地址进行连接。

  • 127.0.0.1 - 动态端口设置为 0。未设置静态端口
  • 172.16.0.5 - SQL Server 所在服务器的 IP 地址。动态端口设置为 0(自动生成)。没有分配静态端口
  • 172.16.0.6 - SQL Server 实例的 IP 地址(这样团队只需点击 IP 地址,而不知道他们真正在哪个服务器上)。未分配动态端口。静态端口 1433

我一直在玩木偶,一直在搞乱注册表设置

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12.InstanceNameX\MSSQLServer\SuperSocketNetLib\Tcp

看看我是否可以使用 puppet 自动配置 IP 地址和端口分配。我创建了一个名为“IP172016000006”的新注册表路径路径

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12.InstanceNameX\MSSQLServer\SuperSocketNetLib\Tcp\IP172016000006

我从中模板化

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL12.InstanceNameX\MSSQLServer\SuperSocketNetLib\Tcp\IP1

但现在每当我启动 SQL Server 实例时,我的 127.0.0.1 和 172.16.0.5 动态端口都是不同的。

例如,我将停止 SQL Server 的实例,进入

  • 'SQL Server 配置管理器'
    • 导航到实例的网络配置
      • 网络协议/网络协议
        • IP地址
          • 并为 IP 地址 127.0.0.1 和 172.16.0.5 设置 'TCP 动态端口 = 0。

在我重新启动 SQL Server 后,该实例将监听 127.0.0.1:43340 和 172.16.0.5:43341(它似乎总是比另一个端口多 1 个)

我已阅读有关 SQL Server Browser 的文档,发现 SQL Server Browser 将返回它找到的第一个端口。

我还阅读了 BOL for setting a static port for SQL Server,这很有趣,涵盖了如何设置动态端口。BOL 表示 SQL Server 将尝试连接到指定的端口,但如果失败,它将获得一个新端口。这在很长一段时间内都是有意义的,但 SQL Server 始终具有不一致的动态端口分配。

我已经删除了有问题的注册表值,但 SQL Server 仍然无法将动态端口设置为相同。我已经重新启动了整个服务器。我已多次将 TCP 动态端口设置为“0”。

如何再次获得一致的动态端口?

  • Windows 服务器 2012 R2
  • SQL 服务器 12.0.5571.0
  • 安装了 8 个 SQL Server 实例 - 其中 3 个是集群的(它是我们 DBA 的测试配置框;不要太苛刻地判断)
sql-server sql-server-2014
  • 1 1 个回答
  • 409 Views

1 个回答

  • Voted
  1. Best Answer
    Hannah Vernon
    2018-04-20T17:52:13+08:002018-04-20T17:52:13+08:00

    动态端口的要点是您不关心服务器在哪个端口上运行。 SQL Server Browser将客户端定向到动态选择的端口。

    如果你不想要动态端口,那么一开始就分配一个端口,然后它永远不会改变。

    • 6

相关问题

  • SQL Server - 使用聚集索引时如何存储数据页

  • 我需要为每种类型的查询使用单独的索引,还是一个多列索引可以工作?

  • 什么时候应该使用唯一约束而不是唯一索引?

  • 死锁的主要原因是什么,可以预防吗?

  • 如何确定是否需要或需要索引

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve