添加NT AUTHORITY\NETWORK SERVICE至SQL Server 2014开发者版并排查远程连接报错
解决SQL Server 2014开发者版远程连接报错(Error 28)及登录账号配置问题
先给你捋清楚:你遇到的 (provider: SQL Network Interfaces, error: 28 - Server doesn't support requested protocol) 报错,核心原因是SQL Server的网络协议没正确启用,这和登录账号配置是两个独立环节,咱们先搞定协议问题,再处理账号权限。
第一步:开启SQL Server的远程连接协议
- 登录你的虚拟机,打开「SQL Server配置管理器」(开始菜单搜索即可找到)
- 展开「SQL Server网络配置」,找到你的开发者版实例(默认名称是
MSSQLSERVER) - 右侧协议列表里,必须启用这两个协议:
- TCP/IP
- 命名管道(Named Pipes,若你的连接方式用到它则需开启)
- 右键点击「TCP/IP」选择「属性」,切换到「IP地址」标签页,拉到最底部找到「IPAll」,将「TCP端口」设为
1433(SQL默认端口),最后重启SQL Server服务让设置生效
第二步:添加NT AUTHORITY\NETWORK SERVICE登录账号
开发者版默认不会自动创建这个账号,你可以手动配置:
- 在虚拟机里打开SSMS,连接本地SQL Server实例
- 展开左侧「安全性」>「登录名」,右键选择「新建登录名」
- 在「登录名」输入框直接输入
NT AUTHORITY\NETWORK SERVICE,点击「检查名称」确认账号存在(系统会自动补全格式) - 切换到「服务器角色」标签页,按需勾选权限:一般给
public就满足基础访问,若需要更高权限可选择sysadmin(生产环境不建议这么操作) - 再切换到「用户映射」标签页,勾选该账号需要访问的数据库,同时设置对应的数据库角色(比如
db_datareader/db_datawriter,对应读写权限) - 点击「确定」保存配置
第三步:补全远程连接的必要设置
- 确保虚拟机防火墙开放1433端口:打开Windows防火墙,新建入站规则,允许TCP协议的1433端口通过
- 本机SSMS连接时,输入虚拟机IP地址+端口号,格式如
192.168.xxx.xxx,1433,再选择合适的验证方式:- Windows身份验证:需要你的本机账号在虚拟机SQL Server中拥有对应登录权限
- SQL Server身份验证:可启用sa账号(开发者版默认禁用,需在登录名里右键sa启用并设置密码)
这样一步步操作下来,应该就能解决你的远程连接问题,同时完成NT AUTHORITY\NETWORK SERVICE账号的配置啦。
内容的提问来源于stack exchange,提问作者ProdigioM
相关产品推荐
相关产品推荐

