首页 > 解决方案 > 使用来自 vsts 的本地构建代理连接到在 networkservices 下创建的 localdb

问题描述

我有一个本地 vsts 构建代理正在运行,它在 localdb 上运行集成测试。这工作正常,但如果我想检查数据库,则无法从我的用户帐户连接到数据库,因为数据库位于该network service帐户下。

我试图共享和启动本地数据库

sqllocaldb share networkservice mssqllocaldb .\test
Private LocalDB instance "mssqllocaldb" (owner: NT AUTHORITY\NETWORK SERVICE) shared with the shared name: ".\test".

sqllocaldb start .\test
LocalDB instance ".\test" started.

但连接失败。

sqlcmd -S .\test
Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : SQL Server Network Interfaces: Error Locating Server/Instance Specified [xFFFFFFFF]. .
Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : Login timeout expired.
Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : A network-related or instance-specific error has occurred while establishing a connection to SQL Server

用 ssms 连接到这个数据库的简单方法是什么(Sql Server management Studio)

标签: sql-serverazure-pipelines-build-task

解决方案


一个选项是运行https://docs.microsoft.com/nl-nl/sysinternals/downloads/psexec并启动 ssms。

从管理员 cmd 运行 psexec

psexec -i -u "nt authority\network service" "C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\Ssms.exe"

推荐阅读