我有2个SQL Server 2008R2实例和SQL Server Express 2008实例 SQLCMD等,有效[1]。
但“SQLCMD -L
”和“OSQL -L
”失败[2]
为什么呢?
在SQLCMD使用中我缺少什么?
如何使用SQLCMD获取服务器?
[1] SQLCMD的测试结果
>sqlcmd
1> use AdventureWorks2008R2;
2> SELECT TOP(2) BusinessEntityID, FirstName, LastName From Person.Person;
3> GO
Changed database context to 'AdventureWorks2008R2'.
BusinessEntityID FirstName LastName
---------------- -------------------------------------------------- --------------------------------------------------
285 Syed Abbas
293 Catherine Abel
(2 rows affected)
1>
[2]
SQLCMD -L
服务器:
OSQL -L
服务器: - 没有 -
更新:
启动SQLBrowser后,我有:
OSQL -L
服务器:
(本地)
PBLACK
PBLACK \ SQL2008R2
PBLACK \ SQLEXPRESSSQLCMD -L
服务器:
PBLACK
PBLACK \ SQL2008R2
PBLACK \ SQLEXPRESS
为什么OSQL枚举(本地)但不是SQLCMD?
SQLEXPRESS(坏了,我无法启动它)和SQL2008R2实例没有运行(停止) - 它们为什么被枚举?
是否可以只公开正在运行的SQL Server实例?
答案 0 :(得分:3)
实例发现协议依赖于SQL Server Browser Service。默认情况下,此服务已禁用。如果需要能够发现安装的SQL Server实例,则需要显式启用和启动此服务。