如何通过网络访问Windows身份验证的本地SQL Server?
解决ARM64笔记本局域网连接SQLExpress(AlarmLock)的身份验证问题
1. 切换SQL Server身份验证模式
- 在主机的Azure Data Studio中连接
BP-WS-CONTROL\ALSQLEXPRESS,右键实例选择管理 - 进入安全性→服务器身份验证,勾选SQL Server和Windows身份验证模式
- 重启SQL Server (ALSQLEXPRESS)服务(通过SQL Server Configuration Manager操作)
2. 创建专用SQL登录账户
在Azure Data Studio的查询编辑器执行以下SQL(替换实际数据库名):
-- 创建服务器级登录 CREATE LOGIN [AlarmLockRemoteUser] WITH PASSWORD = '自定义强密码', CHECK_EXPIRATION = OFF, CHECK_POLICY = OFF; GO -- 切换到AlarmLock业务数据库 USE AlarmLock; -- 若不确定数据库名,可在主机的数据库列表中查看 GO -- 创建数据库级用户并分配权限 CREATE USER [AlarmLockRemoteUser] FOR LOGIN [AlarmLockRemoteUser]; GO ALTER ROLE db_datareader ADD MEMBER [AlarmLockRemoteUser]; ALTER ROLE db_datawriter ADD MEMBER [AlarmLockRemoteUser];
3. 配置SQL Server允许远程连接
- 打开主机的SQL Server Configuration Manager
- 展开SQL Server网络配置→ALSQLEXPRESS的协议,启用TCP/IP
- 双击TCP/IP进入设置,切换到IP地址标签,拉至底部修改
IPAll的TCP端口为1433 - 再次重启SQL Server (ALSQLEXPRESS)服务
4. 配置主机防火墙放行SQL端口
- 打开主机的Windows Defender防火墙高级设置
- 新建入站规则:
- 规则类型选择端口,协议选TCP,指定本地端口
1433 - 选择允许连接,应用到专用网络(局域网环境)
- 命名规则为
SQLExpress Remote Access
- 规则类型选择端口,协议选TCP,指定本地端口
5. ARM64笔记本连接测试
打开Azure Data Studio(ARM版原生支持),新建连接:
- 服务器地址填写
BP-WS-CONTROL,1433(用逗号指定端口,避免实例名解析问题) - 身份验证类型选SQL登录,输入之前创建的
AlarmLockRemoteUser及对应密码 - 点击连接测试
关键注意事项
- 不要修改SQL服务的登录账户,改回默认的
NT Service\MSSQL$ALSQLEXPRESS即可,该账户为SQL服务专用,稳定性更高 - 若连接失败,先通过
ping BP-WS-CONTROL测试主机连通性,用telnet BP-WS-CONTROL 1433验证端口是否开放
内容的提问来源于stack exchange,提问作者rotarybean
相关产品推荐
相关产品推荐

