如何通过PowerShell启用SQL Server 2019的“允许远程连接到此服务器”选项?
启用SQL Server 2019远程连接的PowerShell实现方法
一、对应注册表位置说明
SQL Server 2019的“允许远程连接”选项对应注册表路径分两种情况:
- 默认实例:
HKLM:\Software\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQLServer\SuperSocketNetLib\Tcp - 命名实例:将路径中的
MSSQL15.MSSQLSERVER替换为MSSQL15.你的实例名(比如实例名为DEV则是MSSQL15.DEV)
需要修改的键值:
- 键名:
Enabled - 类型:
DWORD - 启用值:
1(禁用为0)
注意:修改注册表需要管理员权限,且修改后必须重启SQL Server服务才能生效。
二、无需修改注册表的简便PowerShell方法(推荐)
直接使用SQL Server管理对象(SMO)操作是更规范、可靠的方式,无需手动定位注册表路径,步骤如下:
1. 安装SMO模块(首次使用)
如果未安装SQL Server模块,以管理员身份运行PowerShell执行:
Install-Module SqlServer -Force -AllowClobber
2. 启用远程连接的脚本
# 加载SMO模块 Import-Module SqlServer # 替换为你的SQL Server实例名(默认实例用localhost,命名实例用localhost\InstanceName) $targetInstance = "localhost" # 连接到目标实例 $server = New-Object Microsoft.SqlServer.Management.Smo.Server($targetInstance) # 启用远程连接配置 $server.Configuration.RemoteAccessEnabled.ConfigValue = 1 $server.Configuration.Alter() # 重启SQL Server服务使配置生效(默认实例服务名是MSSQLSERVER,命名实例是MSSQL$InstanceName) Restart-Service -Name "MSSQLSERVER" -Force
注意事项
- 必须以管理员权限运行PowerShell
- 命名实例需替换脚本中的实例名和服务名
- 若SQL Server服务依赖其他服务(如SQL Server Agent),可根据需要一并重启
内容的提问来源于stack exchange,提问作者SeveredTRUTH
相关产品推荐
相关产品推荐

