sqlcmd가 작동하지 않습니다: lib libmsodbcsql.13.dylib를 열 수 없습니다.

sqlcmd가 작동하지 않습니다: lib libmsodbcsql.13.dylib를 열 수 없습니다.

mssql-tools설치 해봤습니다 msodbcsql,

나는 심볼릭 링크를 걸었 /usr/local/homebrew/lib/libmsodbcsql.13.dylib습니다/usr/local/lib/libmsodbcsql.13.dylib

하지만 sqlcmd는 여전히 lib 누락에 대해 불평합니다.

%> sqlcmd -S IP
Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : Can't open lib '/usr/local/lib/libmsodbcsql.13.dylib' : file not found.

어떤 아이디어가 있나요?

답변1

@thrig가 말했듯이 저는 dtruss이 문제를 디버깅하려고 노력했습니다.

sudo dtruss sqlcmd -S someserver

출력에서 sqlcmd가 읽기를 시도했지만 /usr/local/lib/libodbcinst.2.dylib실패합니다.

심볼릭 링크를 추가하면 libodbcinst.2.dylib문제가 해결되었으므로 실제로는 종속성 누락으로 인해 발생했습니다. 한숨

답변2

이것은 우리의 모든 컴퓨터에서 발생하는 것은 아니지만 오늘 우리는 이 문제를 겪었습니다. 우리는 달린다

brew install msodbcsql

우리는 만났다

libmsodbcsql13.dylib not found

우리는 달린다

brew link msodbcsql

그 결과는 다음과 같습니다.

4 symlinks created

이것은 우리의 문제를 해결합니다.

답변3

해결책

먼저 패키지를 다시 설치해 보세요.

brew tap microsoft/msodbcsql https://github.com/Microsoft/homebrew-mssql-release
ACCEPT_EULA=y brew reinstall --no-sandbox msodbcsql mssql-tools

그래도 문제가 발생하면 다음을 실행하세요.

cp -v "$(brew list msodbcsql | grep odbcinst.ini$)" ~/.odbcinst.ini

SQL ODBC 드라이버의 위치를 ​​정의하는 INI 파일을 복사합니다.

오류 보고서:SQL Server: 'SQL Server용 ODBC 드라이버 13' 라이브러리를 열 수 없습니다..

sqlcmd -S localhost그런 다음 다음을 통해 SQL 설정을 테스트하십시오 isql -v -k <connection-string>.

바라보다:Linux 및 macOS에 SQL Server용 Microsoft ODBC 드라이버 설치.

디버그

$ odbcinst -j # Verify the config.
$ sleep 20 && sqlcmd -S localhost & # Run `sqlcmd` in the background.
$ sudo fs_usage -f filesys | grep -w sqlcmd | grep -e open -e access -e stat64
open              /Users/myuser/.odbcinst.ini                 
access            /usr/local/lib/ODBC Driver 13 for SQL Server
access            /lib>>>>>>>>>>>>>>>>>>>>                    
access            /usr/lib/ODBC Driver 13 for SQL Server      
stat64            ODBC Driver 13 for SQL Server               
stat64            /opt/X11/lib/ODBC Driver 13 for SQL Server  
stat64            /usr/lib/ODBC Driver 13 for SQL Server      

Linux의 경우 다음 Anaconda 관련 질문을 참조하세요.SQL Server용 ODBC 드라이버 13이 라이브러리를 열 수 없습니다..

답변4

해결 방법: 버전 13에서는 SSL v 1.0.0을 열어야 합니다. 시도해 볼 수 있습니다.

양조 설치https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

관련 정보