我想在我的Windows 7 x64機器上建立一個SQL Server 2012 LocalDB(RTM,x64)共享實例,我似乎無法連接到共享實例。我正在使用管理員命令提示符進行所有設置。下面是我如何創建實例:爲什麼我無法連接到SQL Server 2012 LocalDB共享實例?
sqllocaldb create MyInstance
其產生響應:
LocalDB instance "MyInstance" created with version 11.0.
到目前爲止好。現在我分享實例:
sqllocaldb share "MyInstance" "MySharedInstance"
導致:
Private LocalDB instance "MyInstance" shared with the shared name: "MySharedInstance".
仍在尋找好。在這一點上,我的信息的命令得到:同時使用管理員或非管理員命令提示符
.\MySharedInstance
MyInstance
v11.0
連接到從所有者帳戶(這是管理員)的情況下,似乎很好地工作。事情脫落的軌道,不過,當我登錄爲普通用戶(不是Windows管理員),並嘗試連接:
sqlcmd -S (localdb)\.\MySharedInstance
結果:
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Named Pipes Provider: Could not open a connection to SQL Server [2]. .
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Login timeout expired.
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online..
使用增加登錄超時「-l」開關沒有幫助。我可以連接到不共享的默認v11.0實例。除非沒有「MyInstance」,否則非admin用戶的info命令會產生與上述相同的結果,因爲它是admin用戶擁有的命名實例。下面的命令(其中工程管理員用戶/實例所有者):
sqllocaldb info ".\MySharedInstance"
也導致錯誤:
Windows API call "FileTimeToSystemTime" returned error code: -2147024809.
所以,問題是,爲什麼不能我非管理員用戶連接到我的共享實例?這似乎打敗了共享實例的全部目的。當我嘗試查詢共享實例時,「sqllocaldb info」命令有什麼問題會引發錯誤?
你說的是一個非管理員的Windows用戶連接?所以你已經註銷並以不同的用戶身份登錄?或者是用戶試圖從不同的機器連接? – 2012-04-18 17:37:56
以不同的用戶身份登出並重新登錄。我不需要從不同的機器連接。 – 2012-04-18 17:55:53
您確定實例在註銷事件之後仍然存在嗎?如果您以管理員用戶身份註銷並重新登錄,會發生什麼情況?我懷疑你會遇到同樣的問題。 – 2012-04-18 18:00:11