cygwin 창에서 SQL Server에 연결 시간 초과, DOS 프롬프트에서 작동
-
02-07-2019 - |
문제
DOS 명령 창에서 sqlcmd를 통해 SQL Server 데이터베이스에 연결할 수 있지만 Cygwin 창에서는 연결할 수 없습니다.DOS에서:
F:\Cygnus>sqlcmd -Q "select 'a test'" -S .\SQLEXPRESS
시험
(1개 행이 영향을 받음)
F:\Cygnus>
====================================================
Cygwin에서:
$ sqlcmd -Q "select 'a test'" -S .\SQLEXPRESS
HResult 0x35, 수준 16, 상태 1
명명된 파이프 공급자:SQL Server에 대한 연결을 열 수 없었다 [53].SQLcmd:오류:Microsoft SQL 네이티브 클라이언트 :서버에 대한 연결을 설정하는 동안 오류가 발생했습니다.SQL Server 2005에 연결할 때이 실패는 기본 설정에서 SQL Server가 원격 연결을 허용하지 않는다는 사실로 인해 발생할 수 있습니다.SQLcmd:오류:Microsoft SQL 네이티브 클라이언트 :로그인 시간 초과가 만료되었습니다.
해결책
백슬래시는 cygwin의 bash 쉘에 의해 사용되고 있습니다.두 배로 늘려보세요:
sqlcmd -Q "select 'a test'" -S .\\SQLEXPRESS
다른 팁
이를 위해 원격 연결을 허용하고 전체 서버 이름(예: SERVER\SQLEXPRESS)을 제공해야 할 수도 있습니다.
"-Q" 스위치를 사용하면 쿼리/명령을 db에 전달하고 셸에서 출력을 받을 수도 있습니다.
sqlcmd -Q "select * from nice.dbo.TableName ac ORDER BY 1 DESC" -S server_name\\db_name
제휴하지 않습니다 StackOverflow