Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何使用CMD将SQL Server实例TCP端口更改为1433?_Sql Server_Vb.net_Sql Server 2008 R2_Command Prompt_Vb.net 2010 - Fatal编程技术网

Sql server 如何使用CMD将SQL Server实例TCP端口更改为1433?

Sql server 如何使用CMD将SQL Server实例TCP端口更改为1433?,sql-server,vb.net,sql-server-2008-r2,command-prompt,vb.net-2010,Sql Server,Vb.net,Sql Server 2008 R2,Command Prompt,Vb.net 2010,我正在考虑是否可以使用cmd将SQLServer2008实例TCP端口更改为1433,而不使用SQLServerConfiguration Manager 我只想将其应用到我的应用程序设置中,我的客户希望它处于多用户模式 我知道如何使用cmd启用TCP/IP。我知道如何创建一个脚本来允许windows防火墙中的特定端口 提前谢谢。如果我的详细信息不足以回答我的问题,请留下评论。如果要通过安装程序更改端口,则必须直接编辑目标SQL Server实例的注册表。我强烈建议不要这样做,因为您可能最终选择

我正在考虑是否可以使用cmd将SQLServer2008实例TCP端口更改为1433,而不使用SQLServerConfiguration Manager

我只想将其应用到我的应用程序设置中,我的客户希望它处于多用户模式

我知道如何使用cmd启用TCP/IP。我知道如何创建一个脚本来允许windows防火墙中的特定端口


提前谢谢。如果我的详细信息不足以回答我的问题,请留下评论。

如果要通过安装程序更改端口,则必须直接编辑目标SQL Server实例的注册表。我强烈建议不要这样做,因为您可能最终选择了不正确的实例,或者更糟糕的是进行了不正确的更改并损坏了值和注册表项

但是,如果您仍然认为这是您想要自动执行的操作,则注册表项位于以下位置:

软件\Microsoft\Microsoft SQL 服务器\InstanceID\InstanceName\SuperSocketNetLib\TCP


必须计算实例名称的位置(这也可以通过注册表完成,具体取决于所在位置的版本)。您还需要确定哪个IP(除非您想更改IPALL值)是您的目标IP,因为所有IP都列在实例的子文件夹中。

不完全是cmd,但powershell是新的cmd。:)


六年(几乎完全)过去了,因为我写了上面的答案。从那时起,技术水平不断提高。虽然我确信前面的答案仍然有效,但今天我将使用来自dbatools powershell模块的SETDBATCPORT

SQL Server不侦听UDP,但浏览器服务侦听UDP。多用户处于数据库级别而不是实例级别,与SQL Server或浏览器服务正在侦听的端口无关。你能更新一下细节吗:)Hi@SeangAlly谢谢你的评论,我编辑了我的问题,事实上,我已经在手动模式下做了这件事,但这需要技术技能和知识。但我希望它能在一次点击中完成这些事情。我希望你能理解我。:)这显示了它在注册表中的存储位置。您可以尝试使用命令行平铺或脚本来设置此设置
import-module sqlps;
$MachineObject = new-object ('Microsoft.SqlServer.Management.Smo.WMI.ManagedComputer') "computername"
$instance = $MachineObject.getSmoObject(
   "ManagedComputer[@Name='computername']/" + 
   "ServerInstance[@Name='instancename']"
)

$instance.ServerProtocols['Tcp'].IPAddresses['IPAll'].IPAddressProperties['TcpPort'].Value = "1433"
$instance.ServerProtocols['Tcp'].IPAddresses['IPAll'].IPAddressProperties['TcpDynamicPorts'].Value = ""
$instance.ServerProtocols['Tcp'].Alter()