Когда я запускаю это из cmd на моем экземпляре SQL Server 2008:

sqlcmd -U sa -S mymachinen_name\MSSQLSERVER

(где MSSQLSERVER - имя моего экземпляра)

Я получаю запрос на ввод пароля и после этого получаю следующее:

Пароль:

HResult 0x57, уровень 16, состояние 1 Сетевые интерфейсы SQL Server: недопустимая строка подключения [87].

Sqlcmd: ошибка: собственный клиент Microsoft SQL Server 10.0: при установке соединения с SQL Server произошла ошибка, связанная с сетью или конкретным экземпляром. Сервер не найден или недоступен. Проверьте правильность имени экземпляра и настройку SQL Server для удаленных подключений. Дополнительные сведения см. В электронной документации по SQL Server.

Sqlcmd: ошибка: собственный клиент Microsoft SQL Server 10.0: истекло время ожидания входа в систему.

У меня запущена служба браузера SQL Server, и я также могу войти в систему через Management Studio с проверкой подлинности Windows.

Также нашел эту статью базы знаний, но это для SQL Server 2005/2000.

7
rickepm 22 Фев 2015 в 18:48

4 ответа

Лучший ответ

Обычно служба MSSQLSERVER - это служба безымянного экземпляра по умолчанию .

Поэтому попробуйте это:

sqlcmd -U sa -S mymachine_name

( без указания имени экземпляра - только имя компьютера )

22
marc_s 22 Фев 2015 в 15:55

Обратите внимание, что при подключении через sqlcmd к другому серверу, если целевой сервер является частью группы кластера высокой доступности, вы захотите указать -M. Кроме того, вы не захотите указывать БД, которая использует AG. (это полезно, среди прочего, для установки заданий через sqlcmd в удаленные места)

sqlcmd -S SERVERNAME,1433 -d msdb -Q "SELECT job_id FROM msdb.dbo.sysjobs WHERE (name = 
N'RANDOM_JOB_NAME')" -M
0
Turner 18 Янв 2021 в 15:03

Устанавливается при установке, по умолчанию нет. Попробуйте войти в систему без имени пользователя

0
rickepm 22 Фев 2015 в 17:50

Я столкнулся с этой ошибкой, пытаясь подключиться к серверу через Jenkins, и решил ее следующим образом:

sqlcmd  -e -S "SERVER_NAME,PORT_NUMBER" -U %USER% -P %PASSWORD% -i "D:\\test.sql"
1
Martijn Pieters 23 Мар 2020 в 09:49