2014-05-22 5 views
7

Windows 인증을 사용하여 Microsoft SQL Server에 연결하기 위해 Oracle SQL Developer (4.0.2)의 최신 버전을 얻으려고 시도했습니다. 나는 jtds-1.3.1-dist에서 ntmlauth.dll (및 JtdsXA.dll) 파일을 다운로드하고 복사하여 개발자가 찾고있을 것이라고 생각할 수있는 모든 위치에 복사했지만 새로운 연결을 시도 할 때 SQL Server 탭에서 "Windows 인증 사용"옵션을 클릭하면 "상태 : 실패 -I/O 오류 : SSO 실패 : 원시 SSPI 라이브러리가로드되지 않았습니다."라는 메시지가 나타납니다. java.library.path 시스템 속성을 확인하십시오. " 그러나 SQL Server 또는 SSMS 용 Toad를 아무런 문제없이 사용하여 데이터베이스에 연결할 수는 있지만 가능하면 SQL Developer를 선호합니다.Microsoft SQL Server에 대한 Oracle SQL Developer 연결

+0

http://stackoverflow.com/questions/3452/sql-client-for-mac-os-x-that-works-with-ms-sql-server – zee

+0

나는 이것을 너무 오래 전에 연구하고있었습니다. 그리고 제가 발견 할 수있는 가장 좋은 것은 위의 실입니다. http://blog.bittersweetryan.com/2012/01/using-oracles-free-sql-developer-as.html?m=1 – zee

답변

2

나는 똑같은 문제가있었습니다. 결국 sql-developer 디렉터리 아래의 jdk\jre\bin 폴더에 ntlmauth.dll을 배치하여 작동하도록했습니다. 어떤 이유로 sql-developer는 jdk를 가지고 있습니다.이 jdk는 주위를 둘러 보았습니다. 나는 여러 시스템 레벨 jre 디렉토리 (즉, C:\Program Files\Java\jre7\bin)에서 앞서 언급 한 DLL의 위치가 왜 작동하지 않는지 알아 내려고 노력했다.

sql-developer\jdk\jre\bin 폴더에있는 ntlmauth.dll의 배치가 작동하는 이유를 알고있는 사람이 누구인지 알고있는 경우 시스템 레벨 jre 폴더에 배치하는 것이 좋지 않습니다.

내 OS = 윈도우 2007 64 비트

jtds 라이브러리의 =의 jtds 라이브러리-1.2.7

0

이유는 아주 간단합니다; SQLDEVELOPER는 설치된 시스템 레벨 jre에 대해 알지 못합니다. Oracle은 Java가 있거나없는 SQLDEVELOPER를 번들합니다. java없이 다운로드 한 경우, 응용 프로그램을 처음 시작할 때 java_home의 위치를 ​​묻는 메시지가 표시됩니다. 이미 java가 설치된 SQLDEVELOPER 버전을 설치하면 정상 작동합니다. 프롬프트가 표시되지 않습니다. 귀하의 경우에는 이미 응용 프로그램과 함께 패키지 된 자바 버전을 설치했습니다.

그래서 질문의 루트는 (특정 설치에서) SQLDEVELOPER에 의해 시스템 레벨 jre가 사용되지 않으므로 해당 디렉토리에 배치 한 ntlmauth.dll이 사용되지 않습니다.

3

x64 시스템의 경우 ..\jtds-1.3.1-dist\x64\SSO\ntlmauth.dll ~ - ..\sqldeveloper\jdk\jre\bin 폴더 만 복사하면됩니다. 복사 - x86 시스템의 유사한 폴더 내용도 복사하십시오.

+0

이것은 실제로 허용 된 대답이어야합니다. 관리자가 답변이없는 낡은 질문에 대한 답변을 수락하기를 바랍니다. – Jabda