시도한 내용에 관계없이 SQLCMD를 작동시킬 수 없습니다.


10

내가하는 일에 관계없이 SQLCMD를 작동시킬 수 없습니다. 200MB + 크기의 스크립트를 실행하려고하는데 SQL Server 응용 프로그램에서 실행할 수 없으므로 SQLCMD를 통해이 작업을 수행해야하지만 로그인하거나 스크립트를 실행할 때마다 즉시 닫힙니다.

msdn이 sqlcmd 유틸리티를 따랐습니다.

신뢰할 수있는 명령 SQLCMD -EI get을 통해이를 시도했습니다.

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..

명시 적 서버, 사용자 이름 및 비밀번호 선언을 통해 시도했습니다.

C:\Users\MyUserName\Documents>SQLCMD -S DESKTOP-1N3OD6V\SQLEXPRESS -U DESKTOP-1N3OD6V\MyUserName-P MyPassword
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Login failed for user 'DESKTOP-1N3OD6V\MyUserName'..

답변:


23

SQLCMD서버 이름을 지정하지 않고 호출하면 로컬 시스템의 기본 인스턴스에 연결을 시도합니다. 없는 경우 첫 번째 오류가 표시됩니다. -S서버 이름을 지정 하려면 매개 변수를 사용하십시오 .

Windows 인증을 사용하려면 -E플래그를 사용하면 사용자 이름이나 비밀번호를 제공 할 필요가 없습니다.
예: SQLCMD -Smyserver\myinstance -E

SQL Server 인증을 사용하려면 -U-P매개 변수를 사용하여 자격 증명을 제공하십시오.
예: SQLCMD -Smyserver\myinstance -UsomeUser -PhisPassword

지정 -U하면 Windows 사용자 이름을 사용할 수 없습니다. 이는 SQL Server 로그인을위한 것입니다. 다른 Windows 사용자를 가장하려면 먼저 해당 사용자를 가장하는 명령 프롬프트를 시작하십시오.

예:

  1. 명령 프롬프트 열기
  2. 유형 runas /USER:domain\username cmd
  3. 사용자의 비밀번호를 입력하십시오
  4. 운영 SQLCMD

cmd의 링크를 마우스 오른쪽 단추로 클릭하고 "다른 사용자로 실행 ..."을 선택하면 동일한 결과를 얻을 수 있습니다.


이로 인해 인터넷 검색 시간이 길어졌습니다. 감사합니다!
Rhys Johns

이것을 해결하려고 노력한 나이가 들었습니다. 감사합니다!
Joel Murphy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.